将数字csv的每一行转换为单独的列表

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

我有一个名为sales_qty.csv的文件,其中包含以下内容:

25,64,23,45,14 12,82,19,34,63 54,22,17,43,35

我想将每一行变成一个列表。

到目前为止,我已经尝试过这段代码:

import csv

with open('sales_qty.csv', 'r') as quantity:
    read = csv.reader(quantity)

    for row in read:
        lst1 = list(row)

    print(lst1)

结果是['54','22','17','43','35']。 因此,文件的最后一行被分配给列表。我正在试图将每一行分配到自己的列表中。但我不知道从哪里开始。任何帮助将非常感激!

python python-3.x
1个回答
3
投票

你有正确的想法,但每次你读一行时你都会覆盖lst1。因此,lst1将始终显示最后一行。

一种方法是保留列表列表:

results = []
for row in read:
  results.append(list(row))

print(results)
# [['25', '64', '23', '45', '14'], ['12', '82', '19', '34', '63'], ['54', '22', '17', '43', '35']]

您可以打印整个列表,如上所示。列表中的项目也可通过其索引进行寻址:

print(results[0])
# ['25', '64', '23', '45', '14']

print(results[1])
# ['12', '82', '19', '34', '63']

# and so on...

Read up on Python lists

© www.soinside.com 2019 - 2024. All rights reserved.