问题描述
对于一般的编码世界来说,我是一个新手,在完成了一个最新的以密码学为主题的Codecademy项目之后,我受到启发去尝试使用类似的设置来创建自己的ROT13解码器,因为我已经看到ROT13使用了很多在一些我经常去掩盖剧透的粉丝中我写的代码如下:
ABCs = "abcdefghijklmnopqrstuvwxyz"
punctuation = ".,?'! "
user_input = input("Enter message to be decoded: ")
def ROT13_decode(message):
translation = ""
for letter in message:
if not letter in punctuation:
letter_value = ABCs.find(letter)
translation += ABCs[(letter_value + 13)]
else:
translation += letter
return translation
print(ROT13_decode(user_input))
但是,在调试时,出现以下错误消息:
line 10,in ROT13_decode
translation += ABCs[(letter_value + 13)]
IndexError: string index out of range
当只有26个字母可以使用时,我不知道我的字符串索引如何超出范围。我想念什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)