我想从文本文件中的列表中加载列表。我经历了很多例子,但没有解决方案。这就是我要做的
我是python的新手
def main()
mainlist = [[]]
infile = open('listtxt.txt','r')
for line in infile:
mainlist.append(line)
infile.close()
print mainlist
`[[],['abc','def', 1],['ghi','jkl',2]]`
但是我想要的是这样的
[['abc','def',1],['ghi','jkl',2]]
我的 list 包含
'abc','def',1
'ghi','jkl',2
'mno','pqr',3
我想要的是访问列表时
print mainlist[0]
应该回来'abc','def',1
任何帮助将不胜感激
谢谢,
最佳答案
在我看来,您可以这样做:
from ast import literal_eval
with open('listtxt.txt') as f:
mainlist = [list(literal_eval(line)) for line in f]
这是确保保留元素类型的简便方法。例如像这样的行:
"foo","bar",3
将转换为2个字符串和一个整数。当然,这些行本身也需要格式化为python元组...并且由于其通用性和简单性,这可能不是最快的方法。