Python 中的凱撒密碼
假設我們有一個小寫字母字串 s 和一個偏移數字 k。我們需要將 s 中的每個字母替換為字母表中後移 k 個位置的字母。我們需要記住,當字母超出 a 或 z 時,它會在另一側換行。
因此,如果輸入類似於“hello”,k = 3,則輸出將為“khoor”
要解決此問題,我們將按照以下步驟進行 −
定義一個 shift() 函式。它將獲取 c
i := ASCII (c) - ASCII('a')
i := i + k
i := i mod 26
返回 ASCII (ASCII('a') + i) 中的字元
在主方法中,執行以下操作 −
ret := 對於 s 中的每個字元 c,透過呼叫 shift(c) 生成一個元素列表
返回 ret
讓我們看看下面的實現以更好地理解 −
示例
class Solution:
def solve(self, s, k):
def shift(c):
i = ord(c) - ord('a')
i += k
i %= 26
return chr(ord('a') + i)
return "".join(map(shift, s))
ob = Solution()
print(ob.solve("hello", 3))輸入
"hello", 3
輸出
khoor
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP