我正在努力完成一些相当直接的事情。我想从txt文件创建python中的列表,并且能够像我手动构建它一样打印列表中的每个项目。
例如:
list1 = [
"""
Test1
Test2
Test3
""",
"""
Test4
Test5
Test6
""",]
print (list1[1])
Test4
Test5
Test6
使用txt文件时我很难做到这一点。我希望文本文件的内容是:
"""
Test1
Test2
Test3
""",
"""
Test4
Test5
Test6
""",
并将其读入list1,然后能够从list1打印,如上例所示。我读过的每篇文章都是从文件中读取的,看起来过于复杂,我无法得到我想要的结果,需要帮助。
如果有办法让txt文件以不包含“”“”“的方式格式化,请格式化并包含一些其他分隔字符串的方法,例如”“并以相同的方式结束通过维护换行符的功能,我有兴趣知道
答案 0 :(得分:1)
使用正则表达式:
import re
with open('test.txt') as f:
list1 = re.findall(re.compile(r'"""\n((?:[^"]|\n)+)\n"""'),f.read())
print (list1[1])
生成
>>>
Test4
Test5
Test6
>>>
答案 1 :(得分:-1)
其他回复可能会为您提供更可靠/更安全的方式,但这就是您要找的内容:
with open('myfile.txt') as f:
contents = f.read()
list1 = eval('[' + contents + ']')