为了账号安全,请及时绑定邮箱和手机立即绑定

如何以新变量的名称调用变量

如何以新变量的名称调用变量

繁星coding 2022-06-14 17:08:07
我对 Python 比较陌生,我想知道如何以新变量的名称调用变量。例如,当我有以下 2 个变量及其值时:number1 = 100string1 = 'abc'我想编写一行代码,以便我可以创建名称包含变量 number1 和 string1 的值的新变量(例如 new_var_100 和 new_var_abc)例如:new_var_(value_of_number1) = 200   ##What to write on LHS?new_var_(value_of_string1) = 'def'  ##What to write on LHS?这样当我调用 new_var_100 时,它返回 200;当我调用 new_var_abc 时,它返回“def”。
查看完整描述

2 回答

?
ibeautiful

TA贡献1993条经验 获得超5个赞

不确定你是否应该这样做,但这里是:


string1 = 'abc'


globals()[f"string1{number1}]=200```


查看完整回答
反对 回复 2022-06-14
?
眼眸繁星

TA贡献1873条经验 获得超9个赞

你不能——至少在不涉及一些非常老套的解决方案的情况下是不能的。


如果您想将变量名视为字符串,修改或连接它们,您实际上需要一个字典:


my_dict = {'number1' = 100, 'string1' = 'abc'}

然后,您可以通过在括号内传递键值来访问这些值 - 从根本上讲,它就像任意变量名一样工作:


my_dict['number1']  # returns 100 

my_dict['string1']  # returns 'abc'

然后,您可以使用简单的 for 循环根据一些逻辑创建新值:


for value in my_dict.values():

    my_dict['new_var_' + str(value)] = 200

请注意,我的代码只是将与键关联的值设置'new_var_100'为'new_var_abc'200。如果您想以不同的方式更新字符串和整数,则需要额外的逻辑。


查看完整回答
反对 回复 2022-06-14
  • 2 回答
  • 0 关注
  • 116 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信