Dict понимание с двумя for
петель к спасению:
letter_score = {letter: score for score, letters in scrabble_scores
for letter in letters.split()}
Э.Г. для каждой буквы в строке (разделенной пробелом), создайте пару ключей и значений в выходном словаре; ключ - это буква, значение - оценка.
Демы:
>>> scrabble_scores = [(1, "E A O I N R T L S U"), (2, "D G"), (3, "B C M P"),
... (4, "F H V W Y"), (5, "K"), (8, "J X"), (10, "Q Z")]
>>> letter_score = {letter: score for score, letters in scrabble_scores
... for letter in letters.split()}
>>> letter_score
{'A': 1, 'C': 3, 'B': 3, 'E': 1, 'D': 2, 'G': 2, 'F': 4, 'I': 1, 'H': 4, 'K': 5, 'J': 8, 'M': 3, 'L': 1, 'O': 1, 'N': 1, 'Q': 10, 'P': 3, 'S': 1, 'R': 1, 'U': 1, 'T': 1, 'W': 4, 'V': 4, 'Y': 4, 'X': 8, 'Z': 10}
>>> letter_score['Q']
10
Bonus слова оценка калькулятор:
>>> word = 'QUICK'
>>> sum(letter_score[c] for c in word)
20
где word
это прописная строка, содержащая только (Эрудит букву), игнорируя двойную и тройную букву скоринг.
Это питон? – Noctua
@Noctua yes in phyton – Ramya
Что вы попробовали? – RemcoGerlich