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

Python如何不硬编码将变量及对应字符串转换为pandas dataframe

可以实现,不需要硬编码四个变量的名称,直接从当前作用域筛选对应变量即可,参考代码如下:

import pandas as pd

# 你已定义的四个字符串变量
line1 = 'be nice'
line2 = '"best!"'
line3 = 'better?'
line4 = 'oh no\nbear spotted'

# 筛选所有名称以line开头的局部变量,按名称排序保证line1到line4的顺序
line_list = sorted([(var_name, var_value) for var_name, var_value in locals().items() if var_name.startswith('line')])

# 生成DataFrame
df = pd.DataFrame(line_list, columns=['Line', 'String'])

# 输出符合要求的Markdown表格
print(df.to_markdown(index=False))

如果要更严谨,避免匹配到其他line开头的非数字后缀变量(比如line_test),可以用正则做规则校验:

import pandas as pd
import re

line1 = 'be nice'
line2 = '"best!"'
line3 = 'better?'
line4 = 'oh no\nbear spotted'

# 仅匹配line+纯数字格式的变量名
line_list = sorted([(k, v) for k, v in locals().items() if re.fullmatch(r'line\d+', k)])
df = pd.DataFrame(line_list, columns=['Line', 'String'])
print(df.to_markdown(index=False))

运行上述代码输出的表格完全匹配你给出的预期格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 13:57:03