在下面的代码中,我有一个词典“ John”,该词典用一个特定的键(“电话号码”)为它分配一个值:
John={}
statement='John'+"['phone number']=123456"
exec statement
我使用上述“ exec”执行此操作的原因是,实际的字典“ John”和“电话号码”应该在for循环内变化。这可行,但不是很优雅。我想做类似的事情
vars()['John'+'_phone_number']=123456
因为在这种情况下,如果语法不正确,就不会冒“ exec”语句失败的风险。(除了字典条目,我想实现的功能类似于Matlab的“ assignin”功能)。
有没有一种方法可以在不使用“ exec”的情况下定义字典的条目?
我认为您应该使用字典词典。您甚至可以使用Adefaultdict
来避免需要为每个单独用户预先设置每个条目。
from collections import defaultdict
users = defaultdict(dict)
users['John']['phone number'] = 123456
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句