创建一个名为decrypt的函数,它接受两个参数,一个名为key的元组参数和一个名为cipher_text的字符串参数

时间:2015-05-19 05:31:46

标签: python encryption

  

创建一个名为decrypt的函数,它接受两个参数,一个名为key的元组参数和一个名为cipher_text的字符串参数。

     

该功能应采用“密文”中的文本,即编码文本和密钥的值,以便将文本移向适当的方向。

     

该函数应将密文作为纯文本返回。 (使用islower()isupper()函数查看字符是小写还是大写。返回'密文'时的情况很重要。)

Def decrypt(key, cipher_text):

for i in cipher_text:
       For index in key:
              Text = i + index
text.lower()

return text

1 个答案:

答案 0 :(得分:0)

def decrypt(key, cipher_text):
    text = str(cipher_text)
    import string
    charup = string.ascii_uppercase
    chardown = string.ascii_lowecase
    newstring = ""
    counter = 0
    for x in text:
        if counter <= len(text) - 1:
           pass
        else:
           counter = 0
        if x.islower():
            newchar = chardown[(chardown.index(x) + key[counter]) % 25]
        elif x.isupper():
            newchar = charup[(charup.index(x) + key[counter]) % 25] 
        newstring = newstring + newchar
        counter = counter + 1

使用以下代码时,您需要牢记以下所有内容:

  1. 我假设字符串 包含任何特殊字符或数字,在这种情况下islower()isupper()不行。

  2. 此代码适用于至少 Python 3.3和Python 3.4

  3. 我不知道你在谈论哪个appropriate direction。 如果您打算向后,那么您只需要更改

    newchar = chardown[(chardown.index(x) + key[counter]) % 25]
    newchar = charup[(charup.index(x) + key[counter]) % 25]
    

    到 -

    newchar = chardown[(chardown.index(x) - key[counter]) % 25] 
    newchar = charup[(charup.index(x) + key[counter]) % 25]