莫爾斯碼( morse code)最早用於電報通訊,因此一般稱為莫爾斯電碼。這是一種時通時斷的訊號**,通過不同的排列順序來表達不同的英文本母、數字和標點符號等。莫爾斯碼由兩種基本訊號組成:短促的點訊號 「 .」 (讀「滴」)和保持一定時間的長號「ー讀「嗒」)。
下圖是莫爾斯電碼表的字母部分,各個英文本母以不同的點dot(.)和划dash(——)表示。在發報時,一點就是「嘀」的一聲,一劃就是「嗒」的一聲,「嗒」保持的時間是3個嘀」的長度。參照上面的電碼表,發出sos的求救訊號就是「滴滴滴嗒嗒嗒滴滴滴」。
這次我們就來看看怎麼用python來解密莫斯密碼通過將莫爾斯電碼表存放到字典中,就能將輸入的英文句子便捷地轉換成莫爾斯碼的形式。使用自然語言描述將英文句子轉換成莫爾斯碼的演算法,具體步驟如下,
(1)準備乙個莫爾斯碼字典資料。
morsetochar =
(2)輸入一句莫爾斯密電碼。morse = input('請輸入一句莫爾斯密電碼:')
(3)先將輸入的莫爾斯密電碼按空格分隔開來,並存入列表。lists = morse.split(' ')
在這裡如果不分隔開來就直接逐個讀取的話就會出現,讀乙個點就進行解碼的錯誤。
』 . 『解碼是 e,』—』 解碼是 t
進行分隔再解碼才能解碼正確的對應字母
(4)使用for…in迴圈語句逐個讀取分隔好的列表的元素。
for word in lists:
(4)從字典中讀取每個電碼符號對應的字母。word = morsetochar.get(word,' ').lower( )
(5)輸出乙個字母和乙個空格。print(word , end=' ')
(6)至此,將英文句子轉換為莫爾斯碼的程式編寫完畢,完整**如下:'.':'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',}
morse = input('請輸入一句莫爾斯密電碼:')
lists = morse.split(' ')
for word in lists:
word = morsetochar.get(word,' ').lower( )
print(word , end='')
加密的方法還有很多很多,python的演算法強大,對資料處理操作容易
python中的hashlib模組用來進行hash或者md5加密,而且這種加密是不可逆的,所以這種演算法又被稱為摘要演算法。其支援openssl庫提供的所有演算法,包括md5、sha1、sha224、sha256、sha512等。
有興趣的同學我們以後可以來給大家介紹。
莫斯密碼加密與解密 python加密篇
莫爾斯碼 morse code 最早用於電報通訊,因此一般稱為莫爾斯電碼。這是一種時通時斷的訊號 通過不同的排列順序來表達不同的英文本母 數字和標點符號等。莫爾斯碼由兩種基本訊號組成 短促的點訊號 讀 滴 和保持一定時間的長號 讀 嗒 下圖是莫爾斯電碼表的字母部分,各個英文本母以不同的點dot 和划...
加密與解密(五) 密碼 加密
問題 1 密碼的存在意義?2 加密演算法有哪些?密碼 密碼學 密碼 通訊雙方按照約定的法則進行資訊特殊變換的一種重要保密手段。依照這些法則,變明文為密文,稱為加密變換 變密文為明文,稱為脫密變換 解密 密碼體制可以分為以下幾種 密碼學的目標 加密乙個密碼系統的安全性只在於金鑰的保密性,而不在演算法的...
python應用 愷撒密碼加密與解密
1.它是一種替換加密的技術,明文中的所有字母都在字母表上向後 或向前 按照乙個固定數目進行偏移後被替換成密文。例如,當偏移量是3的時候,所有的字母a將被替換成d,b變成e,以此類推。這個加密方法是以愷撒的名字命名的,當年愷撒曾用此方法與其將軍們進行聯絡。2.ascii表 2.具體實現 class c...