我正在使用Python 3.6
我可以使用.format函数将变量值作为新变量值的一部分插入,如下所示:
var_1 = "First_Var"
var_2 = "Second_Var_{}".format(var_1)
print (var_1, var_2)
运行时打印:
First_Var Second_Var_First_Var
我希望能够根据以下代码在varict中插入var_1和var_2的值作为值:
var_1 = "First_Var"
var_2 = "Second_Var_{}".format(var_1)
dict_with_inserts = {'First_Var': '{}_inserted', 'Second_Var': '{}_inserted'}.format(var_1, var_2)
print (dict_with_inserts)
当我运行以上内容时,我收到以下错误:
AttributeError: 'dict' object has no attribute 'format'
所以我似乎无法在dicts上使用.format函数。是否有另一种方法可以执行此操作,或者是否无法在Python dict中插入变量的值?
非常感谢任何示例或帮助。
答案 0 :(得分:1)
你可以这样做:
var_1 = "First_Var"
var_2 = "Second_Var_{}".format(var_1)
dict_with_inserts = {'First_Var': '{}_inserted'.format(var_1),
'Second_Var': '{}_inserted'.format(var_2)}
print (dict_with_inserts)
答案 1 :(得分:1)
这是你正在寻找的吗?
var_1 = "First_Var"
var_2 = "Second_Var_{}".format(var_1)
dict_with_inserts = {'First_Var': '{}_inserted'.format(var_1), 'Second_Var': '{}_inserted'.format(var_2)}
print (dict_with_inserts)
答案 2 :(得分:1)
。format函数仅适用于字符串
然而,这将达到与您尝试的相同的结果:
var_1 = "First_Var"
var_2 = "Second_Var_{}".format(var_1)
dict_with_inserts = {'First_Var': '{}_inserted'.format(var_1), 'Second_Var': '{}_inserted'.format(var_2)}
print (dict_with_inserts)
答案 3 :(得分:1)
在python 3.6中,您还可以使用literal strings(也称为f-strings):
var_1 = 'teststring'
mydict = {'first_var': f'{var_1}_inserted'}
print(mydict)
>> {'first_var': 'teststring_inserted'}