将下面的代码写成字典理解是否可能(更重要的是,实用)?
我在这里创建一个词典,然后检查"空白"值(由' - '表示)并将其替换为另一个字符串值。
String retry = input.next();
input.nextLine();
答案 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 == '-']
但这很难看。