在python中读取包含列表和逗号分隔的文件

时间:2010-11-07 17:10:38

标签: python

我有一个文件(.txt),其中包含:[0 1,1 1,3 2,4 1]

我想以这种方式阅读文件:

0 1 /n
1 1 /n
3 2 /n
4 1 /n

我有问题如何消除括号并用逗号分隔每一行。 谢谢你的建议:)

3 个答案:

答案 0 :(得分:3)

>>> s = "[0 1,1 1,3 2,4 1]"
>>> print '\n'.join(s[1:-1].split(','))
0 1
1 1
3 2
4 1

答案 1 :(得分:1)

如果括号不是第一个和最后一个字符,它也会起作用的另一种方法:

print s[s.index("[")+1:s.index("]")].replace(",", "\n")

如果括号 字符串的ifrst和最后一个字符,则可以将其简化为

print s[1:-1].replace(",", "\n")

答案 2 :(得分:0)

简单摘要:

with open("file.txt", "r") as _f:
    myfile = _f.readlines()

myline = myfile[0]

print '\n'.join(myline[1:-1].split(','))

如果文件中有几行相似的行,则可以在'myfile'上使用for语句进行迭代。

for line in myfile:
    print '\n'.join(line[1:-1].split(','))

注意,如果您确定括号位于行的开头和结尾,则可以使用:

print "\n".join(line.strip('[]').split(','))