【问题标题】:Pyqt - get CSV from modelPyqt - 从模型中获取 CSV
【发布时间】:2011-01-12 14:11:08
【问题描述】:

我有基于模型的基于代理模型的树视图。 所以我得到了一个可以过滤和分类的表格。

我只想将此表的当前视图导出到 CSV 文件。 就我所见,导出到文件或打印。

我想我必须为此使用代理模型,对吧? 我找不到方法行或类似的东西。

我真的必须使用 data()、rowCount() 和 collumnCount() 方法吗?

谢谢

【问题讨论】:

    标签: python qt model pyqt


    【解决方案1】:

    有一个用于 python 的 CSV 读取器/写入器,您可以在Frank Osterfeld 的解决方案中使用它。

    更多示例请参见http://docs.python.org/library/csv.html#examples

    import csv
    writer = csv.writer(open("some.csv", "wb"))
    writer.writerows(someiterable)
    

    【讨论】:

      【解决方案2】:

      我不知道任何用于 QAbstractItemModels 的 CSV 解析器或导出器,所以我认为您必须编写自己的导出代码,如下所示(pythonish 伪代码):

      for row in range(model.rowCount()):
          for col in range(model.columnCount()):
              value = model.index( row, col, QModelIndex() ).data( Qt.DisplayRole ).toString()
              #write v, add separator...
          #finish row...
      

      仅使用通用 QAbstractItemModel API,它适用于所有模型,无论是否代理。

      【讨论】:

        猜你喜欢
        • 2018-11-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-26
        • 1970-01-01
        • 1970-01-01
        • 2011-05-02
        • 2018-10-15
        相关资源
        最近更新 更多