我对python比较陌生(c#经验),我在文本文件中有一个列表,我使用它转储到列表中;
with open(fname) as f:
content = f.readlines()
content = [x.strip() for x in content]
问题是,每一行的形式都是XXXXX,XXXXX(XXXXX的长度不同),我希望将f转换为二维数组,其中包含第一维中逗号之前的行中的内容和所有内容在第二次之后。
做这样的事情的最佳做法是什么?
答案 0 :(得分:2)
.split(',')
:从文档中,我们可以看到string
方法.split
将:
使用sep作为分隔符字符串,返回字符串中的单词列表。
举一个例子,拿string
:
s = "abcd, efgh"
然后我们可以做到:
s.split(', ')
获取list
:
['abcd', 'efgh']
因此,对于您的应用程序,只需将其放入list-comprehension
:
with open(fname) as f:
content = f.readlines()
content = [x.strip().split(', ') for x in content]