填写fi的列表

2024-06-07 02:56:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个文件,其中包含用逗号分隔的单词,例如:

tom,harry,ant,qqqq
aa,ww,rr,gg,aa,hh,ss

我想拆分每个元素,用逗号分隔,然后填充如下列表:

^{pr2}$

到目前为止,我尝试了:

array=list()

for i in open(filename):
    element = i.split(',',len(i))
    array.append(element)

打印时我遇到两个问题:

for i in array 
    print i

我得到['tom','harry','ant','qqqq\n']和{}

我想避免使用\n,并像前面所说的那样有一个唯一的列表


Tags: 文件in列表forrrelement单词array
3条回答
with open('myFile.txt', 'r') as myFile:
    array = myFile.read().replace('\n', ',').split(',')

for i in array:
    print i

一个衬垫:

^{pr2}$

您还应该避免在赋值时使用数组、列表等名称。这是不好的做法。在

如果你有任何其他问题给我一个下午!在

您可以先去掉该行以避免\n,并使用extend而不是{}:

for i in open(filename):
    line = i.strip()
    element = line.split(',')
    array.extend(element)

Extend用于将元素添加到数组中,而不是添加数组本身。结果是:

^{pr2}$

而不是:

[['tom','harry','ant','qqqq'], ['aa','ww','rr','gg','aa','hh','ss']]

因为它看起来像逗号分隔的文件,所以我建议您使用CSV module。在

import csv
with open('file') as f:
    csv_file = csv.reader(f)
    L = []
    for i in csv_file:
        L.append(i)
    print [i for j in L for i in j] 

输出:

^{pr2}$

相关问题 更多 >