压缩以下代码,最好使用字典理解

时间:2017-06-18 03:42:25

标签: python dictionary dictionary-comprehension dict-comprehension

将下面的代码写成字典理解是否可能(更重要的是,实用)?

我在这里创建一个词典,然后检查"空白"值(由' - '表示)并将其替换为另一个字符串值。

String retry = input.next();
input.nextLine();

1 个答案:

答案 0 :(得分:2)

为什么不在创建字典时进行替换?

test_dict = dict(zip(list_one, 
                     ('missing' if x == '-' else x for x in list_two)))

或者,如果您有现有字典,则可以使用

创建字典。
{k: 'missing' if v == '-' else v for k, v in d.items()}

如果您希望就地更改现有字典,那么现有代码确实没有任何问题。您可以使用列表推导,例如:

[d.__setitem__(k, 'missing') for k, v in d.items() if v == '-']

但这很难看。