有没有办法转到 python 中的特定行或命令?

Is there a way to go to specific line or command in python?

我正在通过 python 自动阅读无聊的内容并尝试解决实际问题。 在这个项目中,我需要定义 collat​​z() 函数并打印代码中看到的结果,直到它得到 1。 所以基本上我只需要输入一个数字,程序应该 return 数字直到它 returns 1。 程序运行良好,但我有一个问题,是否可以让它变得更好 :D .

我的问题是在使用 try: and except: 之后,有没有一种方法可以在输入函数中输入字符串时不结束进程,而是在 'You must enter number' 下面获取消息并返回输入新数字或字符串并执行while 循环正常。代码工作正常,只是想知道这是否可行,如果可行,如何实现?

def collatz(number):
    if number % 2 == 0:
        print(number // 2)
        return number // 2
    else:
        print(3 * number + 1)
        return 3 * number + 1



try:
    yourNumber = int(input('Enter number: '))
    while True:
        yourNumber = collatz(yourNumber)
        if yourNumber == 1:
            break

except ValueError:
    print('You must enter a number')

try/except 放入循环中,这样在 except 循环将继续,但如果成功,它将 break:

while True:
    try:
        yourNumber = int(input('Enter number: '))
    except ValueError:
        print('You must enter a number')
    else:
        break

while yourNumber != 1:
    yourNumber = collatz(yourNumber)