例子

例子

您好,我希望能够从 Excel 文件中提取数据。与“导出”相反,提取会以某种方式打开 Excel 文件,读取特定行列范围内的所有单元格,并将这些单元格的内容写入 .txt 文件。该范围的内容是数字或文本,因此不存在转换问题。

我更愿意不进入 Excel 并使用另存为或复制粘贴功能来完成此操作。

我的环境是 OS X Yosemite,我很乐意尝试使用 Python 或 bash 来实现这一点。目前使用 Excel 2011 来实现这一点,不过可以使用更高版本的 Office for Mac。

谢谢!

答案1

开放的PYXL是一个用于读取和操作文件的 Python 库.xlsx。示例用法在其文档页面

>>> from openpyxl import load_workbook
>>> wb = load_workbook(filename = 'empty_book.xlsx')
>>> sheet_ranges = wb['range names']
>>> print(sheet_ranges['D18'].value)
3

例子

from openpyxl import load_workbook

wb = load_workbook(filename = 'sample.xlsx')
ws = wb['Sheet1']

with open('sample.txt', 'w') as f:
    myrange = ws['A1':'C4']
    for c1, c2, c3 in myrange:
        print(c1.value, c2.value, c3.value, file=f)

电子表格示例

该工作表Sheet1生成一个文本文件,其输出内容如下:

1 5 Nine
Two Six 1923-01-07 00:00:00
3 7 Tiger
40 8 Lion

相关内容