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

Python中如何根据用户输入内容打印对应变量存储的字符串

实现根据用户输入的变量名打印对应变量值的方法

实现思路

你需要将用户输入的字符串形式的变量名,映射到当前代码环境中实际的变量上,优先推荐用内置的作用域字典实现,避免eval带来的代码注入安全风险。

  • 方法1:使用locals()/globals()字典获取(推荐)
    locals()会返回当前局部作用域所有变量组成的字典,键是变量名,值是变量对应的值,直接从里面取值即可,找不到还可以加默认提示避免报错。
    代码示例:
x = '123'
# 接收用户输入
input_var = input("请输入要查询的变量名:")
# 从局部变量字典取值
print(locals().get(input_var, "不存在对应变量"))

如果你的变量是全局定义的,把locals()换成globals()效果完全一致。

  • 方法2:使用eval()(不推荐,仅作参考)
    eval()可以执行传入的字符串代码,虽然能直接拿到变量值,但如果用户输入恶意代码会直接执行,有极高的安全隐患,非特殊场景不要用。
    代码示例:
x = '123'
input_var = input("请输入要查询的变量名:")
try:
    print(eval(input_var))
except NameError:
    print("不存在对应变量")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 16:24:04