我是python新手,正在尝试拆分列表并将其存储为数组。在
我有一个csv文件,我正在读取并将每一行存储为一个列表。这些行中的每一行都用逗号分隔,我希望将这些值存储到一个数组中
这是我当前检索csv文件中的行的代码。我被困在尝试解析每一行以存储到一个数组中
def read_csv(self):
csvFileArray=[]
with open('myfile.csv','rb') as csvfile:
bufferreader=csv.reader(csvfile,delimiter=',')
for row in bufferreader:
csvFileArray.append(row)
return csvFileArray
print(csvFileArray[0])
的输出将是['11043299,1,2,1,true']
。现在,我希望这个输出可以作为数组方便地访问,以便进行进一步的计算。例如,当我print(newArray[4])
时,我应该打印true
看看CSV模块。这个csv.DictReader类将CSV文件行放入一个字典,其中头行字段作为字典键。但是,请注意CSV模块将数据读取为字符串,因此您可能需要进行一些类型转换。在
它可以很好地将CSV的内容放入字典中。在
^{pr2}$或者,如果您确实希望每一行都是一个列表,那么可以使用csv.reader()而不是:
它提供了一个列表列表:
以下是CSV模块的文档:
https://docs.python.org/3.5/library/csv.html#csv.reader
你在问题中提到了一个
array
。我不确定你真的想要这个。Python数组必须包含相同的数据类型。给出的例子没有。以下是Python数组的文档:https://docs.python.org/2/library/array.html
希望有帮助!在
我认为你的方法可以写成:
或者
^{pr2}$如果需要尽快关闭文件描述符,因为等待Python GC会影响性能。看我的评论。在
要将逗号分隔的值字符串转换为值列表,只需执行以下操作:
可能对您了解Python标准库提供的here很有用
我不这么认为;这是一个字符串的列表,而不是五个元素。在
^{pr2}$
这就是你想做的吗?在
相关问题 更多 >
编程相关推荐