我的 python 加密程序无法正常工作

I can't get my python encryption program to work properly

我见过其他加密文本的程序,但是它们往往很冗长 - 而且我对 python 还比较陌生。我试过加密一些东西(这很简单),我可以把每个字符都变成 ASCII,它的值改变了,然后又变回来了。但是当我 运行 代码时,列表中只显示最后一个字符,这是为什么,我做错了什么???

message = input('What should I encrypt? ')

for i in range(len(message)):
    num = ord(message[i])
    num += 3
    Chr = chr(num)
    Message = []
    Message.append(Chr)
print(Message)
message = input('What should I encrypt? ')
secret = []

for i in range(len(message)):
    num = ord(message[i])
    num += 3

    secret.append(chr(num))
print(secret)

你在每次迭代中一遍又一遍地重新定义 Message(在我的代码 secret 中),因此当 for 循环结束时你只得到最后一个字符。在 for 循环之前移动 Message = [] 可以解决问题。

你可以直接遍历字符串中的字符(当你不需要索引时),如for char in message: do_stuff().

此处示例:

message = input('What should I encrypt? ')
secret = []

for char in message:
    num = ord(char) + 3
    secret.append(chr(num))

print(secret)