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

如何将factory.txt文件中的数据正确赋值给Python字典对象

问题根源

你当前的读取逻辑是直接将整行内容赋值给变量,读取到的内容包含了配置项名称、等号和首尾空格,不是只保留你需要的路径值,所以赋值到字典后数据不符合预期。

解决方案

方案1:适配现有写法的修改

仅调整读取时的处理逻辑,拆分每行的键和值,只保留右侧的路径内容:

with open('factory.txt', 'r') as factoryInfo:
    # 每行按第一个等号拆分,取右侧部分后去除首尾空白
    Path_Folder_Name = factoryInfo.readline().strip().split('=', 1)[1].strip()
    Cloud_Site = factoryInfo.readline().strip().split('=', 1)[1].strip()
    M_Engine_Path = factoryInfo.readline().strip().split('=', 1)[1].strip()

# 此时再赋值字典就能得到正确结果
data = dict(
    Path = Path_Folder_Name,
    Cloud = Cloud_Site,
    Engine = M_Engine_Path
)

方案2:通用可扩展的自动读取方案

不需要手动逐行定义变量,自动遍历所有配置行生成字典,适合后续配置项新增的场景:

# 直接读取配置生成和原文件键名一致的字典
raw_data = {}
with open('factory.txt', 'r') as factoryInfo:
    for line in factoryInfo:
        line = line.strip()
        # 跳过空行和无等号的无效行
        if not line or '=' not in line:
            continue
        key, value = line.split('=', 1)
        raw_data[key.strip()] = value.strip()

如果你需要自定义字典的键名(把原文件的Path_Folder_Name改为Path这类),可以增加键名映射处理:

key_mapping = {
    'Path_Folder_Name': 'Path',
    'Cloud_Site': 'Cloud',
    'M_Engine_Path': 'Engine'
}
data = {key_mapping[k]: v for k, v in raw_data.items() if k in key_mapping}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 06:48:03