2017-04-25 116 views
0

我有一个tab分隔文件,包含7列。我想把每一列放在python的单独列表中。之后,我会有一个包含7个Python列表的列表。 我试过,但它把每行一个单独的列表:将文本文件转换为python列表中的列表

infile = open('text.txt', 'r') 
s = [] 
for line in infile: 
    s.append(line.strip().split('\t')) 

你知道我怎么能解决这个问题?

+2

如果是正确的TSV,使用'csv'模块:HTTPS ://docs.python.org/3/library/csv.html –

回答

1

尝试:

infile = open('text.txt', 'r') 
s = [[], [], [], [], [], [], []] 
for line in infile: 
    t = line.strip().split('\t') 
    for i, p in enumerate(t): 
     s[i].append(p) 

print(s) 

考虑文件包含:

1 2 3 4 5 6 7 
8 9 10 11 12 13 14 

输出:

[['1', '8'], ['2', '9'], ['3', '10'], ['4', '11'], ['5', '12'], ['6 ', '13'], ['7', '14']] 
0
infile = open('text.txt', 'r') 
s = [] 
for line in infile: 
    count=0 
    for item in line.split("\t"): 
     s[count].append(item) 
     count=count+1 
+0

你也可以添加一些ex对你的代码进行规划。 – xhg

相关问题