我在使用 chr() 函数时遇到问题。我的代码首先获取用户输入,将其放入数组中,然后使用 ord 函数将其转换为相应的数字值,并对关键字执行相同操作。然后它使用 zip 函数将两个数组加在一起以获取数字,并使用其上的 chr 函数将其放回文本。问题是 chr 函数输出不正确
例如
c的数值是99
h的数值是104
它们加起来是 203
我的代码输出 \xcb
当我制作了一个单独的代码时
leb = chr(203)
print leb
输出 203 作为 Ë 这是一个单数字符,我需要解码它
这是我的代码
num_string = raw_input("enter what you would like to encrypt")
num_list = []
for num in num_string:
num_list.append(ord(num))
print num_list
key_string = raw_input("enter the keyword")
key_list = []
for key in key_string:
key_string = key_list.append(ord(key))
print key_list
end_string = [x + y for x, y in zip(num_list, key_list)]
end_list = []
print end_string
for end in end_string:
end_list.append(chr(end))
print end_list
当它运行时,这是输出
输入你想加密的内容 cat
[99]
[99, 97]
[99, 97, 116]
输入关键字hat
[104]
[104, 97]
[104、97、116]
[203、194、232]
['\xcb', '\xc2', '\xe8']
为什么我的代码会这样做,我该如何解决?