python摩斯电码互译
时间: 2023-11-16 11:02:11 浏览: 184
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': '--..', '0': '-----', '1': '.----', '2': '..---', '3': '...--', '4': '....-', '5': '.....', '6': '-....', '7': '--...', '8': '---..', '9': '----.'}
# 定义英文字母和摩斯电码的对应关系
MORSE_CODE_REVERSE_DICT = {v: k for k, v in MORSE_CODE_DICT.items()}
def encode_morse_code(text):
"""将文本转换为摩斯电码"""
morse_code = ''
for char in text:
if char != ' ':
morse_code += MORSE_CODE_DICT[char.upper()] + ' '
else:
morse_code += ' '
return morse_code
def decode_morse_code(morse_code):
"""将摩斯电码转换为文本"""
text = ''
morse_code_list = morse_code.split(' ')
for code in morse_code_list:
if code != '':
text += MORSE_CODE_REVERSE_DICT[code]
else:
text += ' '
return text
# 示例
text = 'Hello World'
morse_code = encode_morse_code(text)
print(morse_code) # '.... . .-.. .-.. --- / .-- --- .-. .-.. -..'
decoded_text = decode_morse_code(morse_code)
print(decoded_text) # 'HELLO WORLD'
```
阅读全文