我是一名学生,正在学习python。我想制作一个程序,这样我就可以将excel中的整行合并到一个列表元素中。我怎么想这样做?目前,我可以将excel中的数据转换为字符串。如何将它们组合并将它们转换为每行作为元素的列表?如何将这个excel写入字典? 预先感谢。 以下是我的代码:
import csv
def getMedalStats():
fLocation="C://TEMP//"
print("Assumed file location is at: ", fLocation)
fName = input("\nPlease enter a file name with its extension (ex. XXX.txt): ")
fin = open(fLocation + fName, 'r')
aStr = fin.read()
return aStr
#*********************************************************************************
def main():
eventList = getMedalStats()
print(eventList)
答案 0 :(得分:0)
我强烈建议您使用pandas.read_excel()来执行此操作。 Pandas是一个非常有用的模块,它使数据操作变得简单方便。
作为起点,您可以执行以下操作:
import pandas as pd
fin = pd.read_excel(fLocation + fName)
这会将fin
作为pandas数据帧返回,然后您可以使用它。
作为如何操作数据帧的示例:
d = {'col1': [1, 2, 3], 'col2': [3, 4, 5], 'col3': ['3a', '4b', '5d']}
df = pd.DataFrame(data=d)
如果要将第一行转换为列表,可以执行以下操作:
list(df.loc[0])
其中0
是第一行的索引。
或者,如果您想将第一列转换为列表,您可以执行以下操作:
list(df.loc[:,'col1'])
其中col1
是第一列的名称。
或者如果你想将整个excel变成一个列表,每行作为一个元素(通过连接每一行中的所有值):
df['all']=df.astype(str).apply(''.join, axis=1)
list(df.loc[:,'all'])
如果它不起作用或者您需要任何其他帮助,请告诉我们!