python3 題解(52 最原始的加密解密)

2021-10-01 04:12:21 字數 858 閱讀 7547

【問題】據傳說,最原始的加密解密是使用在羅馬軍隊傳遞情報的環節中。其原理只是把明文的字母向後移動 k 個位置。比如k=2時,a變成c,b變成d,y則變為a,z變為b。

請據此規則編寫加密、解密的程式。

我們不妨假定只對小寫字母加密,其它的符號保持不變。

分析:加密的過程向後移動,遇到z後,再迴圈回a,這可以用 +k 取模來實現。

解密實際上就是 -k 引數的加密而已。

## 原始的加密解密

defencode

(s,k)

:## 每個字母後移 k 位

r =""for i in s:

if'a'

<= i <=

'z':

n =ord(i)

-ord

('a'

) n =

(n + k +26)

%26i =

chr(

ord(

'a')

+ n)

r += i

return r

defdecode

(s,k)

:return encode(s,

-k)if __name__ ==

'__main__'

:print

(encode(

'xyz ac 122 abc',2

))print

(decode(encode(

'xyz ac 122 abc',2

),2)

)

需要補基礎的,可以看:小甲魚pyhthon教程,bilibili站上還有:[耿老師]小甲魚python作業 解析系列,持續更新中。

python3安裝 Python3的安裝

1.anaconda安裝 2.安裝包安裝 3.linux下的命令列安裝 centos red hat 1 sudo yum install y sudo yum update3 sudo yum install y python35u python35u libs python35u devel p...

python3的樣子 python3 基礎

第一周 語言基礎 一 python是一門什麼樣的語言?解釋型動態型別強型別定義語言。二 python2和3的主要區別?1 python3裡可以直接預設寫中文,然後python2裡是不能直接寫的。2 python2裡print不用加括號,可直接寫字串,也可以加 python3裡printi必須要加括號...

Python3程式設計題解 校門外的樹

某校大門外長度為l的馬路上有一排樹,每兩棵相鄰的樹之間的間隔都是11公尺。我們可以把馬路看成乙個數軸,馬路的一端在數軸00的位置,另一端在ll的位置 數軸上的每個整數點,即0,1,2,l0,1,2,l,都種有一棵樹。由於馬路上有一些區域要用來建地鐵。這些區域用它們在數軸上的起始點和終止點表示。已知任...