摩斯電碼試題
題目要求
將輸入的英文單詞轉(zhuǎn)換為摩斯電碼朦佩,并且輸出不同摩斯電碼組合的個數(shù)
代碼
a = {
??'a': ".-",
?? 'b': "-...",
?? 'c': "-.-.",
?? 'd': "-..",
?? 'e': ".",
?? 'f': "..-.",
?? 'g': "--.",
?? 'h': "....",
?? 'i': "..",
?? 'j': ".---",
?? 'k': "-.-",
?? 'l': ".-..",
?? 'm': "--",
?? 'n': "-.",
?? 'o': "---",
?? 'p': ".--.",
?? 'q': "--.-",
?? 'r': ".-.",
?? 's': "...",
?? 't': "-",
?? 'u': "..-",
?? 'v': "...-",
?? 'w': ".--",
?? 'x': "-..-",
?? 'y': "-.--",
?? 'z': "--.."
} ??#摩斯電碼
b=set() ?? #定義set類型過濾相同摩斯電碼組合
for w in words:
???? tmp=''" #設(shè)置空字符串等待接受每個單詞的摩斯電碼
???? for l in w:
???????? tmp+=a[l] ?? #提取對應(yīng)字母的摩斯電碼值并拼接
????b.add(temp) ??#加入set組中,相同的組合會被過濾掉
return len(b) ??#計算set組的長度