最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python實(shí)現(xiàn)凱撒密碼加密解密的示例代碼

 更新時(shí)間:2022年06月12日 15:23:11   作者:半夏微光1117  
本文主要介紹了python實(shí)現(xiàn)凱撒密碼加密解密的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

凱撒加密就是通過將字母移動(dòng)一定的位數(shù)來實(shí)現(xiàn)加密和解密。明文中的所有字母都在字母表上向后(或向前)按照一個(gè)固定數(shù)目進(jìn)行偏移,被替換成密文。例如,當(dāng)偏移量是2的時(shí)候,所有的字母B將被替換成D,C變成E,以此類推Y將變成A,Z變成B。由此可見,偏移量就是凱撒密碼加密和解密的密鑰。

下面使用python代碼來實(shí)現(xiàn)凱瑟密碼的加密解密。

import string
def kaisa_jiami(s,k):
? ? lower=string.ascii_lowercase#小寫英文字母
? ? upper=string.ascii_uppercase#大寫英文字母
? ? before=string.ascii_letters#全部英文字母字母
? ? after=lower[k:]+lower[:k]+upper[k:]+upper[:k]#建立循環(huán)字母
? ? table=''.maketrans(before,after)#創(chuàng)建映射表
? ? return s.translate(table)

def kaisa_jiemi(s,k):
? ? lower=string.ascii_lowercase
? ? upper=string.ascii_uppercase
? ? before=string.ascii_letters
? ? after=lower[k:]+lower[:k]+upper[k:]+upper[:k]
? ? table=''.maketrans(after,before)
? ? return s.translate(table)
def main():
? ? s=input("請(qǐng)輸入要加密的字符串:")
? ? k=int(input("請(qǐng)輸入一個(gè)整數(shù)密鑰:"))#將k轉(zhuǎn)換為整數(shù),默認(rèn)輸入為字符
? ? print('需要加密的字符串為:',s)
? ? a=kaisa_jiami(s,k) ?
? ? print("加密后為:",a) ?
? ? b= kaisa_jiemi(a,k)
? ? print("解密后為:",b)
if __name__=='__main__':
? ? main()

運(yùn)行結(jié)果

請(qǐng)輸入要加密的字符串:HELLO world
請(qǐng)輸入一個(gè)整數(shù)密鑰:3
需要加密的字符串為: HELLO world
加密后為: KHOOR zruog
解密后為: HELLO world

上述程序中主要用到了maketrans()和translate()兩個(gè)方法。下面讓我們來詳細(xì)看一下這兩個(gè)方法的使用方法。
translate() 方法根據(jù) maketrans() 方法給出的字符映射轉(zhuǎn)換表轉(zhuǎn)換字符串中的字符。

比如

import string
map = ''.maketrans('ABC123', 'abcDEF')#形成一個(gè)映射,將ABC123分別映射為abcDEF
s = "123ABC"  
s.translate(map)#按照map中的映射關(guān)系進(jìn)行字符的替換。

 運(yùn)行結(jié)果

'DEFabc'

到此這篇關(guān)于python實(shí)現(xiàn)凱撒密碼加密解密的示例代碼的文章就介紹到這了,更多相關(guān)python 凱撒密碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Pytorch 解決自定義子Module .cuda() tensor失敗的問題

    Pytorch 解決自定義子Module .cuda() tensor失敗的問題

    這篇文章主要介紹了Pytorch 解決自定義子Module .cuda() tensor失敗的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • 對(duì)Python模塊導(dǎo)入時(shí)全局變量__all__的作用詳解

    對(duì)Python模塊導(dǎo)入時(shí)全局變量__all__的作用詳解

    今天小編就為大家分享一篇對(duì)Python模塊導(dǎo)入時(shí)全局變量__all__的作用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python與R語言的簡(jiǎn)要對(duì)比

    Python與R語言的簡(jiǎn)要對(duì)比

    這篇文章主要介紹了Python與R語言的簡(jiǎn)要對(duì)比,小編覺得還挺不錯(cuò)的,這里分享給大家,需要的朋友可以了解下。
    2017-11-11
  • Python中對(duì)URL進(jìn)行編碼的操作

    Python中對(duì)URL進(jìn)行編碼的操作

    URL編碼是一種將非ASCII字符轉(zhuǎn)換為ASCII字符序列的過程,以便在網(wǎng)絡(luò)上傳輸U(kuò)RL時(shí)保持它們的有效性和兼容性,在Python中,我們可以使用內(nèi)置的urllib.parse模塊來進(jìn)行URL編碼,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2024-10-10
  • NVIDIA安裝CUDA的實(shí)現(xiàn)(圖文教程)

    NVIDIA安裝CUDA的實(shí)現(xiàn)(圖文教程)

    本文主要介紹了NVIDIA安裝CUDA的實(shí)現(xiàn),包括系統(tǒng)要求、軟件下載、安裝步驟以及常見問題解決,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-01-01
  • 手把手教你pip配置國內(nèi)鏡像源(最新詳盡版)

    手把手教你pip配置國內(nèi)鏡像源(最新詳盡版)

    pip是一個(gè)現(xiàn)代的,通用的Python包管理工具,提供了對(duì)Python包的查找、下載、安裝、卸載的功能,下面這篇文章主要給大家介紹了關(guān)于pip配置國內(nèi)鏡像源的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • numpy使用技巧之?dāng)?shù)組過濾實(shí)例代碼

    numpy使用技巧之?dāng)?shù)組過濾實(shí)例代碼

    這篇文章主要介紹了numpy使用技巧之?dāng)?shù)組過濾實(shí)例代碼,分享了相關(guān)代碼示例,小編覺得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • Linux下安裝python3.6和第三方庫的教程詳解

    Linux下安裝python3.6和第三方庫的教程詳解

    這篇文章主要介紹了Linux下安裝python3.6和第三方庫的教程詳解,需要的朋友可以參考下
    2018-11-11
  • 關(guān)于多元線性回歸分析——Python&SPSS

    關(guān)于多元線性回歸分析——Python&SPSS

    今天小編就為大家分享一篇關(guān)于多元線性回歸分析——Python&SPSS,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python?Rich增加終端顯示視覺效果

    Python?Rich增加終端顯示視覺效果

    Python開發(fā)中,命令行界面(CLI)經(jīng)常被用于交互和數(shù)據(jù)展示,雖然命令行界面通常被視為簡(jiǎn)單、枯燥的文本顯示區(qū)域,通過Python的Rich庫,為命令行界面帶來更多生機(jī)和視覺吸引力,本文帶大家探索Rich功能強(qiáng)大的Python庫,增強(qiáng)終端文本渲染,使輸出更具有吸引力和可讀性
    2024-01-01

最新評(píng)論

来安县| 长阳| 龙陵县| 龙海市| 祁东县| 乌拉特前旗| 永康市| 普兰店市| 德惠市| 游戏| 和硕县| 株洲市| 长宁县| 黔江区| 玉林市| 嘉荫县| 新津县| 特克斯县| 桦甸市| 商南县| 澳门| 海伦市| 马尔康县| 平顶山市| 晋中市| 榆树市| 建德市| 泌阳县| 瓮安县| 台湾省| 北票市| 徐汇区| 平湖市| 班玛县| 台北县| 洛宁县| 大名县| 通化市| 达日县| 丁青县| 江陵县|