以《三國演義》爲密碼本,用Python對文本進行加密和解密

這篇文章主要介紹了利用Python產生加密表和解密表的實現方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,感興趣的朋友可以好好看看!

以《三國演義》爲密碼本,用Python對文本進行加密和解密

題目很簡單,對於一些剛剛入門的小夥伴來說,比較友好。廢話不多說,直接進入正題。

【題目要求】:

實現以《三國演義》爲密碼本,對輸入的中文文本進行加密和解密。至於加密方式,最簡單的從0開始,一直往後,有多個字,就最多到多少。

【分析】:

1.知識背景:需要用到文件的讀寫操作,以及字典和集合的相關知識。

2思路:現將文件讀取進來,然後對文字進行依次編碼,存入字典中.

【代碼】:

#------------------------------簡單難度-----------------------------------
def Load_file_easy(path):
 #[注]返回值是一個set,不可進行數字索引
 file = open(path,'r',encoding='utf8')
 Str = file.read()
 Str = set(Str)
 file.close()
 return Str
def Encode_easy(Lstr):
 Sstr = list(set(Lstr))
 Encode_Dict = {}
 for i in range(len(Lstr)):
 Encode_Dict[Sstr[i]] = i
 return Encode_Dict
def Decode_easy(Encode_dict):
 List1 = Encode_dict.keys()
 List2 = Encode_dict.values()
 Decode_Dict = dict(list(zip(List2,List1)))
 return Decode_Dict

path = 'SanGuo.txt'
Str = list(Load_file_easy(path))
Encode_dict = Encode_easy(Str)
Decode_dict = Decode_easy(Encode_dict)
#寫入同級目錄下的文件中,如果不存在文件,則會新創建
#(博主的運行環境是:Ubuntu,win系統的小夥伴可能會在文件末尾加上.txt 啥的,略略略)
with open('easy_degree_Encode_dict','w') as file:
 file.write(str(Encode_dict))
with open('easy_degree_Decode_dict','w') as file:
 file.write(str(Decode_dict))

以上就是本文的全部內容,希望對大家的學習有所幫助,覺得文章還不錯的話不妨收藏起來慢慢看,有任何建議或看法歡迎大家在評論區分享討論!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章