【发布时间】:2013-03-13 19:14:30
【问题描述】:
我之前创建了一个list 并将其保存到文件“mylist.txt”中。但是,当我读入它时,它是一个字符串,这意味着我无法随意访问每个元素。我一直在尝试并寻找解决此问题的方法,但无济于事。
在文本文档中,列表为一行,如下所示:
[(['000', '001', '002'], ('010', '011', '012')), (['100', '101', '102'], ('110', '111', '112'))]
如果这个列表等于mylist,我可以这样做
>>> print mylist[0]
(['000', '001', '002'], ('010', '011', '012'))
>>> print mylist[0][0]
['000', '001', '002']
>>> print mylist[0][0][2]
002
等等
上面对我有用,但是在列表中阅读有以下效果:
>>>myreadlist=open("mylist.txt",'r').read()
>>>myreadlist
"[(['000', '001', '002'], ('010', '011', '012')), (['100', '101', '102'], ('110', '111', '112'))]"
>>>myreadlist[0]
'['
>>>print myreadlist[0]
[
>>>myreadlist[:15]
"[(['000', '001'"
等等。
我知道mylist 的格式不好,但它可以满足我的需求,而且生成它需要很长时间。我试过像mylist = <paste>一样将列表复制粘贴到python,但是列表太长了,我得到一个内存错误。
有没有办法读取文件并将其用作list,以便我可以正常访问每个元素(即如上面的第一个打印语句所示)?
非常感谢
【问题讨论】: