专业编程基础技术教程

网站首页 > 基础教程 正文

两分钟掌握python中 ‘if name == “_ main _” ‘的用途

ccvgpt 2025-05-11 14:29:44 基础教程 25 ℃

python ‘if name == “_ main _” ‘的用途是判断一个模块是被直接运行还是被导入。如果一个模块是被直接运行,那么它的 __name__ 属性就会被赋值为 __main__,否则就会被赋值为模块的名字。这样,我们就在模块中使用这个语句来执行一些只有在直接运行时才需要的代码,比如测试或演示。

例如,假设有一个名为 hello.py 的模块,它的内容如下:

两分钟掌握python中 ‘if name == “_ main _” ‘的用途

def say_hello(name):
    print(f"Hello, {name}!")

if __name__ == "__main__":
    say_hello("Bing")

如果直接运行这个模块,那么它会输出 Hello, Bing!,因为它的 __name__ 属性是 __main__,所以 if 语句为真,执行了 say_hello("Bing") 这一行。但是如果我们在另一个模块中导入 hello.py,那么它就不会输出任何东西,因为它的 __name__ 属性是 hello,所以 if 语句为假,跳过了 say_hello("Bing") 这一行。我们仍然可以在另一个模块中使用 hello.py 中定义的 say_hello 函数,但是它不会自动执行。

Tags:

最近发表
标签列表