【发布时间】:2017-08-30 09:05:34
【问题描述】:
当text 作为输入字符串,rule 作为输入整数时,挑战是找到 ASCII 值总和,然后根据新的数值转换回字符串。
我的代码出现在正确的轨道上,但是给定ascii_encrypt("a",1),例如,我当前的输出是b'b',而它应该是'b'。我是编码功能的新手,我猜这会让我绊倒。
def ascii_encrypt(text, rule):
text = sum([ord(c) for c in text])
if not text:
return ""
else:
encrypted_text = chr(text + rule)
return encrypted_text.encode('utf-8')
【问题讨论】:
-
你为什么用 UTF-8 编码结果?
-
一个测试用例有混合字母,所以我认为这可以解决这个问题
-
我不明白这条线有什么用:
text = sum([ord(c) for c in text])。您想将此函数用于大于 1 个字符的字符串吗?