Python:从excel到元组列表

问题描述 投票:1回答:5

程序员早上好!我有一个问题(应该很容易,但是我在Python中不太好)。我有一个具有两列短语的Excel(xlsx)文件。例如:

John  I have a dog     
Mike  I need a cat
Nick  I go to school

我想将其导入python并获取类似的元组列表:

[('John', 'I have a dog'), ('Mike', 'I need a cat'), ('Nick', 'I go to school'),..]

我该怎么办?因为我是一个初学者,所以请在答案中写代码。在此先感谢

python excel
5个回答
1
投票

您可以使用pd.read_excel读取excel文件。您需要关心标题是否存在。

正如您所说,它返回一个数据帧。就我而言,我有以下内容。

pd.read_excel

然后,可以使用df = pd.read_excel("data.xlsx") print(df) # name message # 0 John I have a dog # 1 Mike I need a cat # 2 Nick I go to school 获取数据帧的值。它返回一个numpy数组。

如果需要列表,我们使用values将其转换为values

tolist

如您所见,输出是列表列表。如果要<>的列表,只需将它们强制转换:tolist

希望有帮助!

1
投票
因此,您可以使用pandas数据框非常轻松地读取和使用excel文件。以下解决方案实际上将产生一个列表列表。希望它能有所帮助。关于stackoverflow的第一个响应,而且我也不是最有经验的程序员。 ^^

0
投票
df = pd.read_excel (r'PathOfExcelFile.xlsx') print (df) list = [df.columns.values.tolist()] + df.values.tolist() print (list)

0
投票

0
投票
您需要import pandas as pd file_path = r'filepath.xlsx' xlsx = pd.read_excel(file_path) names = xlsx.names scores = xlsx.scores my_list = [(name, score) for name in names for score in scores] print(my_list) 并且需要安装openpyxl模块
© www.soinside.com 2019 - 2024. All rights reserved.