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

如何用Python从TXT文件提取特定变量与数值内容

用Python提取TXT文件中特定变量的数值

嘿,我来帮你搞定这个需求!你的TXT文件里是空格分隔的变量-数值对,用Python提取特定内容非常方便,下面给你两种实用的实现方法:

方法一:字符串分割+字典转换(简单直观)

这种方法完美适配你的文件格式,直接把内容分割后转成字典,之后就能通过变量名快速取值:

# 第一步:读取文件内容
with open('your_variables.txt', 'r') as file:
    content = file.read().strip()  # 读取并去除首尾空白字符

# 第二步:将内容分割成键值对列表
all_items = content.split()

# 第三步:转换为字典,同时把数值转成浮点数(支持科学计数法)
variable_dict = {}
for idx in range(0, len(all_items), 2):
    var_name = all_items[idx]
    # 尝试把值转成浮点数,转失败则保留原字符串
    try:
        var_value = float(all_items[idx + 1])
    except ValueError:
        var_value = all_items[idx + 1]
    variable_dict[var_name] = var_value

# 第四步:提取特定变量
# 比如提取eh和sp_icr的值
print("eh的值:", variable_dict.get('eh'))  # 输出 26.9817
print("sp_icr的值:", variable_dict.get('sp_icr'))  # 输出 15.3199

# 批量提取多个变量的示例
target_vars = ['ew', 'sp_pk_txrl', 'sp_rxrl']
extracted_results = {var: variable_dict[var] for var in target_vars if var in variable_dict}
print("批量提取结果:", extracted_results)

方法二:正则表达式(灵活适配复杂格式)

如果你的文件偶尔出现格式不规整的情况(比如多个空格分隔、变量名带特殊字符),用正则表达式会更可靠:

import re

# 读取文件内容
with open('your_variables.txt', 'r') as file:
    content = file.read()

# 用正则匹配变量名(字母、下划线组成)和对应的数值(支持正负、小数、科学计数法)
match_pattern = r'(\w+)\s+([-+]?\d+\.?\d*(?:e[-+]?\d+)?)'
matched_pairs = re.findall(match_pattern, content)

# 转成字典
variable_dict = {key: float(value) for key, value in matched_pairs}

# 提取特定内容示例
print("sp_pk_il_f的值:", variable_dict['sp_pk_il_f'])  # 输出 7.71614e+09

小提示

  • 记得把代码里的your_variables.txt替换成你实际的文件路径哦。
  • 如果变量值可能是整数或者其他类型,可以根据需求调整类型转换的逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 08:40:38