【发布时间】:2017-12-03 15:03:47
【问题描述】:
我想在我的 python 代码中使用in2csv 将 excel 文件转换为 csv,但不使用 exec 作为单独的进程运行它。相反,我想直接导入函数并使用它,比如in2csv("input.xls", "output.csv"),或者更好的是,直接在python中获取文件的结构,而不使用csv阅读器输出输出文件。
有可能吗?
谢谢!
【问题讨论】:
我想在我的 python 代码中使用in2csv 将 excel 文件转换为 csv,但不使用 exec 作为单独的进程运行它。相反,我想直接导入函数并使用它,比如in2csv("input.xls", "output.csv"),或者更好的是,直接在python中获取文件的结构,而不使用csv阅读器输出输出文件。
有可能吗?
谢谢!
【问题讨论】:
我也有同样的问题。我查看了in2csv 的源代码,发现它内部使用了agate 和agateexcel。我直接用了玛瑙,实现如下方式
对于 xls 文件
import agate
import agateexcel
table = agate.Table.from_xls('input.xls', sheet='sheet')
table.to_csv('output.csv')
对于 xlsx 文件
import agate
import agateexcel
table = agate.Table.from_xlsx('input.xlsx', sheet='sheet')
table.to_csv('output.csv')
https://github.com/wireservice/csvkit/blob/master/csvkit/utilities/in2csv.py
【讨论】: