我有txt格式的数据。制表符分隔的数据
here
a b c
e f g
tere
x y z
w t y
我需要把这些列读成列表。就像
col1 = ['here', '', '', tere, '', '']
col2= ['', 'a', 'e', '', 'x'.'w']
等等。
我用过
import re
infile = open('text.txt', 'r')
i=0
a0='';a1='';a2='';a3='';a4='';a5='';a6='';a7='';
for line in infile:
[a1[i],a2[i],a3[i],a4[i],a5[i],a6[i],a7[i],a8[i]] = line.split('\t')
i+=1
它说“str”对象不支持项分配。
有什么建议吗?
如果希望为每个列的变量分配所有数据,请从列表开始:
然后把它变成一个列的列表:
这是一个列表列表;
per_column[0]
是第一列数据。不过,您确实希望使用^{} module 来读取表格数据。
不幸的是,您的代码与工作Python的距离还不够近。您为几个变量分配了空字符串,然后尝试将它们用作列表。
更正@Martijn Pieters答案
应该是这样的
然后将其转换为列列表:
这是一个列表列表;
per_column[0]
是第一列数据。这就是我想要的结果。
strip()
还会删除空白单元格。在这里
一旦将变量声明为空字符串,就不能单独更改字符串(逐个字符),因为它们是不可变的字符串。
因此,可以使用字符串列表而不是字符串。
相关问题 更多 >
编程相关推荐