我想在我的代码中节省一些空间,所以我写了这个简单的单行 for 循环。从字典 k:[v,v] 我正在创建字典,其中第一个值是键,第二个值保持值。现在我的字典出现异常,原始字典只有一个值,即第一个值。
glyphs_dict = {'dotaccent': [103, 86], 'ring': [104], 'caron': [105, 85]}
id_dict = {k:v for k,v in list(glyphs_dict.values())}
我试过做类似的事情
id_dict = {k:v for k,v in list(glyphs_dict.values()) if k and v}
但不起作用。如何跳过列表中只有一个值的键?
最佳答案
你可以试试这个:
id_dict = {v[0]:v[1] for v in glyphs_dict.values() if len(v) == 2}
如果长度为 2(对于 key 和 value),这将获取字典的所有值作为新的键和值
关于python - 如何在一行for循环中跳过没有值的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55413453/