您似乎是在互動式提示中輸入此**,而不是將其儲存為檔案並執行它。如果是這樣,那麼當您使用input時,視窗將在允許您繼續輸入**之前提示您輸入。在plaintext = input("python: ")
輸入此行後,鍵入要加密的單詞,然後按enter鍵。只有這樣你才能寫下這行:
^$在開始下一行code = ""之前,您應該輸入所需的距離。在
作為乙個風格技巧,我建議將提示文字從"python:"和"3:"改為類似「text to encrypt:」和「distance:」,這樣使用者就可以清楚地看到他應該輸入什麼。在
接下來,這裡有乙個縮排錯誤:if ciphervalue > ord('z'):
ciphervalue = ord('a') = distance - \
if條件後的行應該再縮排一級。在if ciphervalue > ord('z'):
ciphervalue = ord('a') = distance - \
接下來,在這些線路上有兩個問題。在ciphervalue = ord('a') = distance - \
(ord('z') - ordvalue + 1)行繼續符\後面不應該有空格。在任何情況下,最好是將整個表示式寫在一行上,因為這行實際上不夠長,不能分成兩行。在
第二個等號是個打字錯誤。它應該是個加號。在
-ciphervalue = ord('a') + distance - (ord('z') - ordvalue + 1)
此時,您的程式應該執行時沒有任何錯誤,但是它還沒有產生任何輸出。加密每個字元時,將其新增到code。然後在迴圈結束後列印它。在plaintext = input("text to encrypt: ")
distance = int(input("distance: "))
code = ""
for ch in plaintext:
ordvalue = ord(ch)
ciphervalue = ordvalue + distance
if ciphervalue > ord('z'):
ciphervalue = ord('a') + distance - (ord('z') - ordvalue + 1)
code = code + chr(ciphervalue)
print(code)
#to do: write this to a file, or whatever else you want to do with it
這裡,chr將數字ciphervalue轉換成它的等效字母。在
結果:text to encrypt: hacker
distance: 13
unpxre
凱撒密碼,凱撒加密解密
using system using system.collections.generic using system.componentmodel using system.data using system.drawing using system.linq using system.text u...
凱撒密碼加密解密
加密方法 凱撒密碼需要事先設定乙個偏移量值 如 3,4,5等 然後將自己明文中每個字母加上該偏移量轉變為另一字母 如偏移量為3,a字母轉變為d字母 加密程式 string encrypt string mingwen,int k else if mingwen i a mingwen i z els...
python 實現凱撒加密
凱撒密碼 caesar 基本原理 字母表一共有26個英文本母,加密時,我們需要將某個明文本母做n位偏移得到密文,這個n最多為26,而且偏移為26時和偏移為0時一樣,明文和密文對應相等,實際上可以說最大的偏移量為25,這裡的偏移量是這個加密解密演算法的核心,我們可以說他就是秘鑰。公式 加密公式 f a...