Python 中的凯撒密码
pythonserver side programmingprogramming更新于 2025/11/3 21:00:17
假设我们有一个小写字母字符串 s,偏移数字为 k。我们必须将 s 中的每个字母替换为字母表中 k 个位置以外的字母。我们必须记住,当字母溢出 a 或 z 时,它会被包裹在另一侧。
因此,如果输入为"hello",k = 3,则输出将为"khoor"
为了解决这个问题,我们将遵循以下步骤 −
定义一个函数 shift()。这将需要 c
i := (c) 的 ASCII - ('a') 的 ASCII
i := i + k
i := i mod 26
从 ASCII (('a') + i 的 ASCII) 返回字符
从 main 方法中,执行以下操作 −
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
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

