我有一个包含两列短语的 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'), ...]
我能做什么?
最佳答案
您可以使用 pd.read_excel
读取 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
然后,可以使用
to_numpy
获取数据帧的值.它返回一个 numpy
大批。如果您想要一个列表,我们使用
numpy
方法 tolist
将其转换为 list
:out = df.to_numpy().tolist()
print(out)
# [['John', 'I have a dog'],
# ['Mike', 'I need a cat'],
# ['Nick', 'I go to school']]
如您所见,输出是一个列表列表。如果你想要一个元组列表,只需转换它们:
# for getting list of tuples
out = [tuple(elt) for elt in out]
print(out)
# [('John', 'I have a dog'),
# ('Mike', 'I need a cat'),
# ('Nick', 'I go to school')]
备注 :
一个较旧的解决方案是调用
values
而不是 to_numpy()
.但是,文档明确建议使用 to_numpy
并原谅values
.希望有帮助!
关于python - 从 Excel 到元组列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61675812/