我将首先发布我到目前为止的内容,然后告诉你发生了什么......
osalt = ".,!? ABCDEFGHIJKLMNOPQRSTUVWXYZ"
def decode():
int = 0
counter = 0
msg = requestString("What would you like Decoded?").upper()
print "Now decoding, '"+msg+"'."
print "==========Please Wait=========="
while (int < len(osalt)):
dmsg = ""
nsalt = ""
int += 1
int2 = 0
shift = int-1
while int2 <= len(osalt):
if int2+shift < len(osalt):
nsalt += osalt[int2+shift]
else:
nsalt += osalt[int2+shift-len(osalt)-1]
int2 += 1
for letter in msg:
index = nsalt.find(letter)
dmsg += nsalt[index]
print dmsg
counter += 1
print counter
decode()
这应该做的是编码消息在解码时可能出现的 31 种可能性的列表。您输入编码的消息,然后它通过,一次移动 1 个盐字符......所以第二个盐看起来像这样:“Z.,!?ABCDEFGHIJKLMNOPQRSTUVWXY”。
我遇到的问题是它根本没有移动盐,最终打印了 31 次输入。
我已经多次查看我的代码,但我无法弄清楚如何让它运行。
谢谢。