在python中,我在这个while循环中苦苦挣扎,我试图让程序继续重复它自己,直到它输出一个下限、上限和数字,但它在我运行程序时结束
import random
num = 3
print(num)
message=""
for n in range(num):
while message =="":
newnum= random.randint(48,122)
if newnum > 47 and newnum < 58:
val=chr(newnum)
val = newnum
message +=chr(val)
elif newnum > 64 and newnum <91:
val=chr(newnum)
val = newnum
message +=chr(val)
elif newnum > 97 and newnum < 123:
val=chr(newnum)
val = newnum
message +=chr(val)
else:
newnum -= random.randint(7,10)
val=chr(newnum)
val = newnum
message +=chr(val)
if (any(x.isupper() for x in message) and any(x.islower() for x in message)and any(x.isdigit() for x in message)):
print(message)
else:
message =""
我认为你的问题出在错误的位置。尝试使用
你的问题主要是身份和while条件,看看我的代码。你知道吗
在第一次迭代之后,您的消息将是!=的值,因为您将其设置为chr(val)。因此,它永远不会再次进入while循环,只会完成for循环。你知道吗
相关问题 更多 >
编程相关推荐