我一直在想,是否有一種方法來編碼一行,告訴python回到代碼中的其他地方?Python:有沒有辦法告訴程序回去?
事情是這樣的:
choose = int(input())
if choose == 1:
print(「Hi.」)
else:
*replay line1*
一些真正的基本這樣呢?
我不是特別想要使用更大的循環,但如果可能,我可以嗎?
任何想法,我真的是新的python?
我一直在想,是否有一種方法來編碼一行,告訴python回到代碼中的其他地方?Python:有沒有辦法告訴程序回去?
事情是這樣的:
choose = int(input())
if choose == 1:
print(「Hi.」)
else:
*replay line1*
一些真正的基本這樣呢?
我不是特別想要使用更大的循環,但如果可能,我可以嗎?
任何想法,我真的是新的python?
choose = 0
while (choose != 1)
choose = int(input())
if choose == 1:
print(「Hi.」)
這是有點怪異一個,並且它適合於其中值預計布爾例(只有兩個預期值),並且這些布爾值是0或1,而不是一些其他任意字符串,aaand您不希望存儲輸入的位置。
while int(input()) != 1:
# <logic for else>
pass # only put this if there's no logic for the else.
print("Hi!")
雖然有替代方法,例如:
choose = int(input())
while choose != 1:
<logic for else>
choose = int(input())
或者你可以創建一個函數:
def poll_input(string, expect, map_fn=str):
"""
Expect := list/tuple of comparable objects
map_fn := Function to map to input to make checks equal
"""
if isinstance(expect, str):
expect = (expect,)
initial = map_fn(input(string))
while initial not in expect:
initial = map_fn(input(string))
return initial
就這樣用它作爲這樣的:
print("You picked %d!" % poll_input("choice ", (1, 2, 3), int))
對於更多不明確的情況
你必須使用循環。 – Li357
您要查找的術語是_control flow statement_。是的,Python有一些。正如@AndrewLi已經說過的,你可以使用一個循環來完成這個任務。 –
基本上,您正在尋找一種在現代編程語言中不再被廣泛使用的控制結構:'GOTO'語句。這是因爲[結構化編程](https://en.wikipedia.org/wiki/Structured_programming)的出現。你應該爲此使用一個循環。 –