使用Python访问excel文件的有效用法

(在我提出这个问题之前,请理解我已经完成了研究,但是这只是填补我的信息漏洞)

我有一个标准的Excel电子表格.xls,其中包含一个表,其中包含以下信息: Data_Set_One

现在我想实现的是直接将这个.xls文件转换为一个数据types,可以存储在python应用程序的内存中,这个应用程序可以像字典一样相应地访问这些信息。

我已经阅读了一些,但是我的编码经验并不是100%,因为它已经有一段时间了。

你可以使用pandas库,excel操作的优秀库。

 import pandas as pd data_frame = pd.read_excel("path_to_excel", "sheet_name") 

data_frame就像是保存数据的表格或matrix,您可以很容易地处理这个data_frame

所以你想要的应该是与csv模块可能的,假设你把你的xls转换成csv (只保存为…)。

像这样:

 import csv with open('filepath.csv', 'r') as f: reader = csv.DictReader(f) for row in reader: print(row['A'], row['B']) 

DictReader取第一行,并假定这些是字典键。 然后它将每一行变成一个字典,您可以使用第一行中定义的键来访问这些值。

如果你不希望它是一个真正的dict ,你可以使用csv.reader(f) ,它允许你使用列表索引来访问行(上面的例子将以print(row[0], row[1]) )。

这一切都有能够在没有任何第三方导入的情况下使用标准库的好处,因此可以在任何使用Python机器上运行。

您可以使用xlrd来循环执行excel文件。 正如你所build议的,你可以通过excel文件循环并创build一个字典。

更好的select是大pandas ,它把你的Excel作为一个表格读取,称为数据框架。 您可以访问此数据框中的任何单元格,行或列。

例如,你有:

  XY 0 0.213784 0.461443 1 0.703082 0.600445 2 0.111101 0.648624 3 0.101367 0.924729 >>> import pandas as pd >>> df = pd.read_excel(filename) >>> df["X"] 0 0.213784 1 0.703082 2 0.111101 3 0.101367 >>> df["Y"] 0 0.461443 1 0.600445 2 0.648624 3 0.924729 >>> df["X"][0] 0.21378370373100195