0

我有一个 .txt 文件,其内容如下:

0,你好,01,烹饪,02,骑自行车,13,我的夏威夷假期,14,爱荷华州的冰冻天气,0

我到目前为止的代码是:

a = open('wiki.txt','r')
ar = a.readlines()
biglistA = map(lambda each:each.strip('\n'), ar)

这给了我以下输出:

['0,Hello,0', '1,Cooking,0', '2,Biking,1', '3,My Hawaii Vacation,1', '4,Freezing weather in Iowa,0']

我需要让它看起来像:

[['0','Hello','0'], ['1','Cooking','0'], ['2','Biking','1'], ['3','My Hawaii Vacation','1'], ['4','Freezing weather in Iowa','0']] 

最终产品需要是一个嵌套列表,每个元素都被引用,即:

print newlist[1][1]

'烹饪'

那是期望的输出。如果有人可以提供帮助,将不胜感激!

4

2 回答 2

3

在我看来,您需要类似的东西:

with open('wiki.txt') as fin:
    bigListA = [ line.strip().split(',') for line in fin ]
于 2013-02-04T01:56:38.890 回答
1

一个奇怪的要求。我想正则表达式是最好的选择:

import re
with open('wiki.txt') as f:
  s = f.read()
newlist = [triple.split(',') for triple in re.findall(r'\d,.*?,\d', s)]

或者,从您已经在的位置继续,只需应用一个列表理解,例如:

newlist = [x.split(',') for x in biglistA]
于 2013-02-04T02:00:11.177 回答