摩尔斯电码转换python123
时间: 2023-10-14 11:18:58 浏览: 68
morse-master.zip_Python__Python_
以下是一个简单的Python程序,用于将摩尔斯电码转换为文本:
```python
MORSE_CODE_DICT = { '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':'--..',
'1':'.----', '2':'..---', '3':'...--',
'4':'....-', '5':'.....', '6':'-....',
'7':'--...', '8':'---..', '9':'----.',
'0':'-----', ', ':'--..--', '.':'.-.-.-',
'?':'..--..', '/':'-..-.', '-':'-....-',
'(':'-.--.', ')':'-.--.-'}
def decrypt(message):
message += ' '
decipher = ''
citext = ''
for letter in message:
if (letter != ' '):
i = 0
citext += letter
else:
i += 1
if i == 2 :
decipher += ' '
else:
decipher += list(MORSE_CODE_DICT.keys())[list(MORSE_CODE_DICT.values()).index(citext)]
citext = ''
return decipher
def encrypt(message):
cipher = ''
for letter in message:
if letter != ' ':
cipher += MORSE_CODE_DICT[letter] + ' '
else:
cipher += ' '
return cipher
def main():
message = input("请输入要加密/解密的信息: ")
option = input("加密或解密? (E/D): ")
if option == 'E':
result = encrypt(message.upper())
print("加密结果为: ", result)
elif option == 'D':
result = decrypt(message)
print("解密结果为: ", result)
else:
print("无效选项!")
if __name__ == '__main__':
main()
```
在运行程序时,它将提示您输入要加密或解密的消息以及您要执行的操作(加密或解密)。然后,它将使用MORSE_CODE_DICT字典将消息转换为摩尔斯电码,或将摩尔斯电码转换为文本。
阅读全文