如何获取Python列表中元素的变量名而非其对应值?
如何获取列表中变量的名称而非值
当你执行values = [surcharges , data , dataframe , num]时,Python只会把这些变量的值存入列表,不会保留变量名信息,所以遍历列表只能输出值。要获取变量名,可以用以下两种方法:
方法一:使用字典存储变量名与对应值
把变量名作为字典的键,变量值作为字典的值,直接遍历字典的键就能拿到变量名:
# 构建变量名-值的映射字典 var_mapping = {'surcharges': surcharges, 'data': data, 'dataframe': dataframe, 'num': num} # 遍历输出变量名 for var_name in var_mapping: print(var_name)
方法二:先存储变量名字符串,再按需取值
如果只需要变量名,直接把变量名以字符串形式存入列表即可;如果后续需要对应的值,可以通过globals()或locals()全局/局部命名空间获取:
# 直接存储变量名字符串 var_names = ['surcharges', 'data', 'dataframe', 'num'] # 输出变量名 for name in var_names: print(name) # 若需要获取对应变量的值,可执行以下代码 # value = globals()[name] # print(value)
内容的提问来源于stack exchange,提问作者Shaheer Shah
相关产品推荐
相关产品推荐

