繁体   English   中英

从文件中读取列表

[英]Reading a list from a file

我想从.txt文件中读取文件,该文件的数据另存为列表格式。

['http://www.example.com/?date=20080301',
 'http://www.example.com/?date=20080302',
 'http://www.example.com/?date=20080303']

我有以下代码:

with open("test.txt", 'r') as file_name:
    for urls in file_name:
        for url in eval(urls):
            print url

它与完全相同的文件(仅不同的链接)一起使用时效果很好,但突然之间,它引发了一个异常:

File "<string>", line 1
    ['http://www.example.com/?date=20080301',
                                            ^
SyntaxError: unexpected EOF while parsing

你有什么想法?

使用ast.literal_eval()

import ast
with open("test.txt", 'r') as file_name:
    lists = ast.literal_eval(file_name.read())
    for url in lists:
        print url

它比使用eval更为有效,因为并引用了文档,它“安全地评估表达式节点或包含Python表达式的字符串”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM