目前正在创建一个Cesears密码,特别是解密。
for char in decryptString:
x = ord(char)
x = x - decryptVal #this is my negative shift
if x < 32:
x = x + 32
elif x > 126:
x = x - 95
result = result - chr(x)
print('')
print('Decrypted string: ')
print(result)
而且我经常得到:
TypeError: unsupported operand type(s) for -: 'str' and 'str'
而不是我的解密消息
不知道为什么,会欣赏一些见解:)
答案 0 :(得分:1)
您无法从另一个字符串中删除一个字符串 - 这就是此错误告诉您的内容(您可能错过了&#39; - &#39; in&#39;不支持的操作数类型for - &#39;因为它看起来像 - :)。
如果我正确理解您打算做什么,您希望将转换后的字符添加到输出字符串result
中。字符串支持+
进行连接,所以:
result = result + chr(x)
您还需要在循环之前初始化result
,即.. result = ''