[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': '----.', '.': '.-.-.-', ',': '--..--', '?': '..--..',
'/': '-..-.', '-': '-....-', '(': '-.--.', ')': '-.--.-'}
def chinese_to_morse(chinese_str):
# 将中文字符转换为Unicode编码
unicode_str = chinese_str.encode('unicode_escape').decode()
#print(unicode_str)
morse_code = ''
# 遍历Unicode编码中的每个字符,将其转换为摩斯电码
for char in unicode_str:
if char == "\\":
morse_code += MORSE_CODE_DICT['/'] + ' '
else:
char_morse_code = MORSE_CODE_DICT.get(char.lower())
if char_morse_code:
morse_code += char_morse_code + ' '
return morse_code
def morse_to_chinese(morse_code):
# 将摩斯电码解码为Unicode编码
unicode_str = ''
morse_code_list = morse_code.split(' ')
for morse_char in morse_code_list:
if morse_char == '':
continue
char = list(MORSE_CODE_DICT.keys())[list(MORSE_CODE_DICT.values()).index(morse_char)]
if char == '/':
unicode_str += '\\'
else:
unicode_str += char
return unicode_str.encode('utf-8').decode('unicode_escape')
print(chinese_to_morse("我爱你中国"))
print(morse_to_chinese(
"-..-. ..- -.... ..--- .---- .---- -..-. ..- --... ..--- ...-- .---- -..-. ..- ....- ..-. -.... ----- -..-. ..- ....- . ..--- -.. -..-. ..- ..... -.... ..-. -.. "))