您能告诉我为什么我只收到 * 作为输出,而不是最初输入的字符串作为解密的字符串吗?

问题

编写一个程序,输入主字符串,然后通过在每个字符后嵌入基于短符号的字符串来创建加密字符串。该程序还应该能够从加密字符串生成解密字符串。


代码


def encrypt(string,key):

    return key.join(string)

def decrypt(string,key):

    return key.split(string)

#main

original_str=input("Enter a string:")

encrypt_key=input("Enter encryption key:")


encrypt_str=encrypt(original_str,encrypt_key)

print("The encrypted string:",encrypt_str)


decrypt_str=decrypt(encrypt_str,encrypt_key)

decrypted_str=" ".join(decrypt_str)

print("The decrypted string:",decrypted_str)

输出


Enter a string:twinkle twinkle little star

Enter encryption key:*

The encrypted string: t*w*i*n*k*l*e* *t*w*i*n*k*l*e* *l*i*t*t*l*e* *s*t*a*r

The decrypted string: *


问题

我希望解密字符串的输出为:

twinkle twinkle little star

而不是 *


繁花如伊
浏览 99回答 1
1回答

ITMISS

将decrypt函数替换为:def decrypt(string,key):    return string.split(key)并且也替换decrypted_str = " ".join(decrypt_str)为decrypted_str = "".join(decrypt_str)(区别是空格)。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python