这是我的一个简单的凯撒密码风格的程序代码。在
否则它可以正常工作,但是它不能识别用户所写单词之间的潜在空格。在
虽然程序可以正确地翻译字母本身,但它会打印聚集在一个单词中的所有字符,省略空格。在
我试图自己解决这个问题,但是程序却写了一个错误代码:
“AttributeError: 'dict' object has no attribute 'isspace'”。在
还有别的办法吗?在key = {'a':'n', 'b':'o', 'c':'p', 'd':'q', 'e':'r', 'f':'s', 'g':'t',
'h':'u', 'i':'v', 'j':'w', 'k':'x', 'l':'y', 'm':'z', 'n':'a',
'o':'b', 'p':'c', 'q':'d', 'r':'e', 's':'f', 't':'g', 'u':'h',
'v':'i', 'w':'j', 'x':'k', 'y':'l', 'z':'m', 'A':'N', 'B':'O',
'C':'P', 'D':'Q', 'E':'R', 'F':'S', 'G':'T', 'H':'U', 'I':'V',
'J':'W', 'K':'X', 'L':'Y', 'M':'Z', 'N':'A', 'O':'B', 'P':'C',
'Q':'D', 'R':'E', 'S':'F', 'T':'G', 'U':'H', 'V':'I', 'W':'J',
'X':'K', 'Y':'L', 'Z':'M'}
def change(message, new_message):
for ch in message:
if ch in key:
new_message += key[ch]
if ch in key.isspace():
new_message += " "
return new_message
def main():
message = input("Type your message here.\n")
new_message = ""
print(change(message, new_message))
main()