如何在Python中从.txt文件提取嵌套列表
从TXT文件提取嵌套列表的解决方法
你用read()读取得到字符串是正常情况,只需把这个字符串转换成Python原生列表就能直接使用,这里提供两种可靠的解决方法:
方法一:使用ast.literal_eval()(推荐,更安全)
这个方法专门用于解析Python字面量(如列表、字典、数字等),只会处理合法的Python数据结构,不会执行字符串中的恶意代码,安全性更高。
import ast # 打开目标txt文件,读取内容并去除多余换行和空格 with open('your_file.txt', 'r', encoding='utf-8') as file: file_content = file.read().strip() # 将字符串转换为Python嵌套列表 listA = ast.literal_eval(file_content)
执行后listA就是你需要的嵌套列表结构,可直接使用。
方法二:使用eval()(仅适用于可信文件内容)
如果能确保txt文件内容绝对安全、无恶意代码,也可以用eval()直接转换:
with open('your_file.txt', 'r', encoding='utf-8') as file: file_content = file.read().strip() listA = eval(file_content)
注意:eval()会执行字符串中的任意Python代码,若文件来源不可信,绝对不要使用此方法,避免安全风险。
你可以通过type(listA)验证结果,输出为<class 'list'>即说明转换成功。
内容的提问来源于stack exchange,提问作者Dimitrios Priovolos
相关产品推荐
相关产品推荐

