假设我有一个字典config
,其中包含密钥username
和password
。我想创建一个仅包含来自username
的{{1}}和password
键值对的新词典。一种方法是:
config
这对我来说似乎有点冗长,因为它包含单词new_dictionary = {'username': config['username'], 'password': config['password']}
和username
的重复。有没有更简洁的方法呢?
答案 0 :(得分:3)
您可以创建tuple
或list
来存储您要复制的字段的名称并遍历每个元素
new_dictionary = {k: config[k] for k in ('username', 'password')}
答案 1 :(得分:0)
您可以将用户名/密码对存储在子字典(称为凭据)
中config = { 'param1': 'value1', 'credential': { 'username': 'myname', 'password': 'pa22w0rd' } }
new-dictionary = config['credential']
您可以创建凭据类并传递该对象而不是字典。