有没有办法循环回到python中某段代码的开头
Is there a way to loop back to the beginning of a certain part of the code in python
我正在编写一个脚本来检查输入单词的长度是否等于某个数字,如果不等于则再次循环回到输入问题。
我使用了下面的代码,
x=input("input a word")
y=len(x)
while y<8 or 8<y:
print("word must have 8
characters")
continue
print("word accepted")
break
但问题是当使用“continue”循环返回时,它不会循环回到输入问题。也不能在 while 循环中写入输入问题,因为它会给出错误“x is not defined”。
那么我怎样才能循环回到 here.Is 中的输入问题呢?
长度在 while
循环之前已经分配,所以你永远不会得到新的输入。您必须在 while
循环中获取输入,这样您才能一次又一次地获取新的输入。
如你所愿:
while True:
x = input("input a word: ")
if len(x) != 8:
print("word must have 8 characters")
continue
else:
print("word accepted")
break
两种方法,使用 while True
:
while True:
x=input("input a word: ")
if len(x) == 8:
break
print("word must have 8 characters")
使用递归:
def get_input():
x=input("input a word: ")
if len(x) == 8:
return x
print("word must have 8 characters")
return get_input()
while True==True:
x=input("input a word")
y=len(x)
if y==8:
print("word accepted")
break
else:
print("word must have 8 characters")
# continue
我正在编写一个脚本来检查输入单词的长度是否等于某个数字,如果不等于则再次循环回到输入问题。
我使用了下面的代码,
x=input("input a word")
y=len(x)
while y<8 or 8<y:
print("word must have 8
characters")
continue
print("word accepted")
break
但问题是当使用“continue”循环返回时,它不会循环回到输入问题。也不能在 while 循环中写入输入问题,因为它会给出错误“x is not defined”。
那么我怎样才能循环回到 here.Is 中的输入问题呢?
长度在 while
循环之前已经分配,所以你永远不会得到新的输入。您必须在 while
循环中获取输入,这样您才能一次又一次地获取新的输入。
如你所愿:
while True:
x = input("input a word: ")
if len(x) != 8:
print("word must have 8 characters")
continue
else:
print("word accepted")
break
两种方法,使用 while True
:
while True:
x=input("input a word: ")
if len(x) == 8:
break
print("word must have 8 characters")
使用递归:
def get_input():
x=input("input a word: ")
if len(x) == 8:
return x
print("word must have 8 characters")
return get_input()
while True==True:
x=input("input a word")
y=len(x)
if y==8:
print("word accepted")
break
else:
print("word must have 8 characters")
# continue