如何修复 While 语句上的无限" "打印?



im 尝试对此凯撒密码解码器进行编码,但每当输入消息有任何"(空格(时,它就会无限打印" [PS:刚开始编码]

已经尝试更改 -if- 以检查 meslist[x] 是否等于 " ",但它似乎是一个"有效"的东西

这是代码:

import string
letras = list(string.ascii_lowercase)
message = input("qual sua menssagem codificada?")
cod = input("qual a numeração da cifra?")
meslist = list(message)
trans = True
num = len(meslist)
x = 0
while trans:
if num > x:
if meslist[x] in letras:
a = letras.index(meslist[x])
print(letras[a + 2])
x = x + 1
trans = True
else:
print(" ")
trans = True
elif num == 0:
trans = False'

只是期望它以正确的方式打印它。

我修复了代码如下:

while trans:
if num > x:
if meslist[x] in letras:
a = letras.index(meslist[x])
print(letras[a + 2])
x = x + 1
trans = True
else:
print(" ")
trans = True
# to increase x by 1, to take the next char. in the next loop
x = x + 1
# num == x means the end of the loop
elif num == x:
trans = False

最新更新