You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何从txt文件读取列表并直接使用变量a调用

实现方法

方法1:直接执行(仅适用于可信来源的文件)

如果你的文件都是自行生成、来源完全可靠,可以直接用exec()执行读取到的文件内容,执行完成后即可直接调用变量a:

# 建议用with上下文管理器自动处理文件关闭,避免资源泄漏
with open("filename.txt", "r") as my_file:
    content = my_file.read()
exec(content)

# 此时可直接使用变量a
print(a)
# 输出结果:[1, 2, 3]

注意:该方法存在安全风险,如果文件被植入恶意代码,执行后会直接运行恶意逻辑,请勿用于来源不明的文件。

方法2:安全解析(推荐,适配所有场景)

如果文件来源不可信,使用ast.literal_eval仅解析Python基础字面量(列表、字典、字符串、数字等),不会执行任意代码,安全性更高:

import ast

with open("filename.txt", "r") as my_file:
    # 读取行内容并去除首尾空白
    line = my_file.readline().strip()
# 按第一个等号分割,提取变量名和右侧的列表内容
var_name, value_str = line.split("=", 1)
a = ast.literal_eval(value_str.strip())

print(a)
# 输出结果:[1, 2, 3]

多文件批量处理适配

如果你需要处理多个存储不同列表的文件,可以批量解析后存入字典统一调用:

import ast

# 你的文件列表
file_list = ["filename.txt", "filename2.txt", "filename3.txt"]
var_store = {}

for file_path in file_list:
    with open(file_path, "r") as f:
        line = f.readline().strip()
        var_name, value_str = line.split("=", 1)
        var_store[var_name.strip()] = ast.literal_eval(value_str.strip())

# 调用示例:获取变量a对应的列表
print(var_store["a"])

内容的提问来源于stack exchange,提问作者basem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 03:06:02