Python 不会立即通过中断退出循环

Python 不会立即通过中断退出循环,python,Python,当我运行这个简单的程序并想退出它时,我需要输入exit 2次(在第7行) 这是为什么?我怎样才能做到这一点,所以我只需要写一次?这是因为您调用了两次username\u registration()函数 username\u注册() 打印(用户名\注册() 第一次调用它时,不会发生任何事情,因为您没有对结果执行任何操作。此程序有语法错误。如果你的问题不是为什么会这样,那么请构建一个可以展示你的问题或当前代码的页面。你可以调用username\u registration两次。因此,每次呼叫都有

当我运行这个简单的程序并想退出它时,我需要输入exit 2次(在第7行)


这是为什么?我怎样才能做到这一点,所以我只需要写一次?

这是因为您调用了两次
username\u registration()
函数

username\u注册()
打印(用户名\注册()

第一次调用它时,不会发生任何事情,因为您没有对结果执行任何操作。

此程序有语法错误。如果你的问题不是为什么会这样,那么请构建一个可以展示你的问题或当前代码的页面。你可以调用
username\u registration
两次。因此,每次呼叫都有一个
exit
。这似乎是对的。我希望他们对新投稿人不要那么苛刻。我开始接电话,但邮局关门了
import sys
,然后
sys.exit(0)
表示没有消息,或者
sys.exit(“消息”)
表示在消息退出时传递消息。另一个答案描述了它发生的原因。非常感谢你,我没有看到我自己的愚蠢,很高兴听到它起作用!既然这就是你所要找的,你能把它标为公认的答案吗<代码>n\u\u\n
def registration():
def username_registration():
    entering_username = True
    while entering_username:
        print("Type exit to leave the registration.")
        usernam_from_registration = input("Enter username: ")
        if usernam_from_registration == "exit":
            break
        lenght_usernam_from_registration = len(usernam_from_registration)
        if lenght_usernam_from_registration > 15:
            print("too long")
        else:
            return usernam_from_registration
username_registration()
print(username_registration())


registration()