我的问题是如何处理我使用凯撒密码的代码片段.
函数Decrypt和Encrypt必须处理字母表的限制(A - Z和a - z).我试图在一个名为cycleencrypt的循环函数中为两个字母编写两个可能的循环.
但是该函数需要大约6个参数,而且我已经阅读了一个在一个函数中具有3个以上参数的可读性和可理解性较低的地方,所以我的问题是:
我应该通过拆分两个函数来减少参数的数量,并使代码片段更长(但可能更容易理解)?谢谢你的回答,我很感激.
编辑:删除了函数周围的文档,以使我的问题的主要目的可见.
def offsetctrl(offset):
while offset < 0:
offset += 26
return offset
def cycleencrypt(string, offset, index, listing, first, last):
offset = offsetctrl(offset)
if string >= ord(first) and string <= ord(last):
string += offset
while string > ord(last):
string = ord(first) + (string - ord(last) -1)
listing[index] = chr(string)
Run Code Online (Sandbox Code Playgroud)
循环加密有大量参数和负偏移控制
def encrypt(retezec, offset):
listing = list(retezec)
for …Run Code Online (Sandbox Code Playgroud)