Python 面试题
目录

Python 中 __name__ 变量的作用是什么?

· 约 2 分钟读完 · 第 73 / 171 章

推荐答案

在 Python 中,__name__ 是一个特殊的变量,用于表示当前模块的名称。当一个模块被直接运行时,__name__ 的值会被设置为 "__main__";当一个模块被导入时,__name__ 的值会被设置为该模块的名称。

本题详细解读

1. __name__ 的基本作用

__name__ 是 Python 中的一个内置变量,用于标识当前模块的名称。它的主要作用是帮助开发者区分模块是被直接运行还是被导入到其他模块中。

2. 直接运行模块时的行为

当一个 Python 文件被直接运行时,Python 解释器会将该文件的 __name__ 变量设置为 "__main__"。这意味着你可以在模块中添加如下代码来执行一些特定的操作:

3. 模块被导入时的行为

当一个模块被导入到其他模块中时,__name__ 的值会被设置为该模块的名称(即文件名去掉 .py 后缀)。例如,如果一个模块名为 example.py,那么当它被导入时,__name__ 的值将是 "example"。

在这个例子中,example.py 中的 if __name__ == "__main__": 块不会被执行,因为 example.py 是被导入的,而不是直接运行的。

4. 使用场景

__name__ 变量常用于编写可重用的模块。通过检查 __name__ 的值,开发者可以在模块被直接运行时执行一些测试代码或启动代码,而在模块被导入时避免执行这些代码。

5. 总结

__name__ 是 Python 中一个非常有用的内置变量,它帮助开发者区分模块是被直接运行还是被导入。通过合理使用 __name__,可以编写出更加模块化和可重用的代码。