scrabble_scores = [(1, "EAOINRTLSU"), (2, "DG"), (3, "BCMP"),
(4, "FHVWY"), (5, "K"), (8, "JX"), (10, "QZ")]
def get_scrabble_scorer():
print {x:y for x,z in scrabble_scores for y in z}
pass
get_scrabble_scorer()
我期待一个输出:
[1:'E',1:'A,1:'O',1:'I'....]
这样分数将被映射到单词中的每个字母表
但是我得到了输出:
{1: 'U', 2: 'G', 3: 'P', 4: 'Y', 5: 'K', 8: 'X', 10: 'Z'}
帮帮我
最佳答案
您可以将带有打印命令的行更改为:
print [{x:y} for x,z in scrabble_scores for y in z]
那么输出将是:
[{1: 'E'}, {1: 'A'}, {1: 'O'}, {1: 'I'}...
关于python - python嵌套循环中的列表理解,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34378746/