新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:凱撒密碼python編程簡單
1、說明

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、小程序定制開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了廣豐免費建站歡迎大家使用!
凱撒密碼是古羅馬凱撒大帝為了解密軍事情報而使用的算法。將信息中的每個英語文字循環(huán)替換為文字表序列中的第三個字符。有一套專門的字母表對應(yīng)關(guān)系。
2、注意
密文是大寫字母,在變換加密之前把明文字母都替換為大寫字母。
如果是加密,輸出的密文是大寫字母,如果是解密,按照凱撒解密后,轉(zhuǎn)換為小寫后,輸出解密后的明文。
3、實例
from string import ascii_lowercase
s=input() # 輸入一個字符串s
str1='' # 聲明一個字符串str1并賦值''
for i in s: # 遍歷s,我改了下源代碼,這個更方便
if i in ascii_lowercase: # 如果i是小寫字母,string.ascii_lowercase直接對應(yīng)從a到z的字符串
temp=ord(i) # 獲取i對應(yīng)的ascii碼
num=(temp-97+3)%26 # 凱撒加密,應(yīng)該是每個字母向后移動三位,a->d, b->e...x->a, y->b, z->c
str1=chr(num+97) # ascii碼a是從97開始的,所以上一步要-97,這一步要+97
print(str1,end="") # 顯示結(jié)果
else:
print(" ",end="") # 如果不是小寫字母,則直接打印空白
# 如果s的長度特別長,每次都從a-z長度的字符串里找效率不是很高,可以試試以下代碼,所有功能都一樣
s=input() # 輸入一個字符串s
str1='' # 聲明一個字符串str1并賦值''
for i in s: # 遍歷s,我改了下源代碼,這個更方便
temp=ord(i) # 獲取i對應(yīng)的ascii碼
if 97<=temp<=122 : # 如果i是小寫字母, 因為字母a的ascii碼就是97,z的ascii碼是122
num=(temp -94)%26 # 凱撒加密,應(yīng)該是每個字母向后移動三位,a->d, b->e...x->a, y->b, z->c
str1=chr(num+97)
print(str1,end="") # 顯示結(jié)果
else:
print(" ",end="") # 如果不是小寫字母,則直接打印空白以上就是凱撒密碼python編程簡單的介紹,相信大家已經(jīng)對凱撒密碼有了初步的了解,學(xué)會后趕快動手試試吧。更多Python學(xué)習(xí)指路:創(chuàng)新互聯(lián)Python教程
本文教程操作環(huán)境:windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。
文章名稱:創(chuàng)新互聯(lián)Python教程:凱撒密碼python編程簡單
當(dāng)前鏈接:http://www.5511xx.com/article/coggpjh.html


咨詢
建站咨詢
