Python
Python 是一种广泛使用的高级编程语言,它以其易读性和简洁的语法而闻名。Python 支持多种编程范式,包括面向对象、命令式、函数式和过程式编程。它由 Guido van Rossum 创建,并在 1991 年首次发布。
Python 的一些关键特性包括:
- 可读性强:Python 的语法设计得非常清晰,使得代码易于阅读和理解。
- 跨平台:Python 可以在多种操作系统上运行,如 Windows、macOS 和 Linux。
- 解释型语言:Python 是一种解释型语言,这意味着源代码在运行时会被解释器逐行执行。
- 动态类型:Python 是动态类型的,这意味着你不需要在编写代码时声明变量的类型。
- 内存管理:Python 有自动内存管理和垃圾回收机制,这使得内存管理更加容易。
- 丰富的标准库:Python 有一个庞大的标准库,提供了许多内置的模块和函数,用于执行常见的任务。
- 广泛的社区支持:Python 有一个活跃的开发者社区,提供了大量的第三方库和框架。
- 适用于多种应用:Python 可用于开发各种类型的应用程序,包括 Web 开发、数据科学、人工智能、科学计算、自动化脚本等。
Python 的版本主要有 Python 2 和 Python 3。Python 2 在 2020 年已经停止支持,目前推荐使用的是 Python 3。
Python官网:https://www.python.org/
解释
-
在 Python 中,
if __name__ == '__main__'
: 是一个常用的模式,用于确定代码块是否应该被执行。这个模式通常用于模块中,使得模块既可以被导入使用,也可以作为脚本直接运行。- 作为模块:如果模块被其他 Python 脚本导入,
__name__
变量会被设置为模块的名字,而不是'__main__'
。因此,if __name__ == '__main__'
: 后的代码块不会被执行。 - 作为脚本:如果模块是作为脚本直接运行的,
__name__
变量会被设置为'__main__'
。这时,if __name__ == '__main__'
: 后的代码块会被执行。
- 作为模块:如果模块被其他 Python 脚本导入,
-
这种模式使得模块可以灵活地被重用,同时提供了一个入口点,用于当模块被直接运行时执行一些特定的操作。
优点
使用 if __name__ == '__main__'
: 的主要优点是:
- 代码重用:你可以将函数和类定义在同一个文件中,然后根据需要将它们作为模块导入到其他脚本中。
- 避免重复执行:当你的模块被导入时,你不希望执行某些代码(如主程序逻辑),这样可以避免不必要的重复执行。
示例
- Python demo:
# 这是一个模块,可以被其他脚本导入
def my_function():
print("This is a function in the module.")
if __name__ == '__main__':
# 这段代码只有在模块被直接运行时才会执行
print("This module is being run as a script.")
my_function()
- 作为脚本直接运行:
python my_module.py
,输出如下,可以看到两段文字都打印出来了。
- 作为模块,在另外一个脚本
main.py
中导入该模块,运行python main.py
,输出如下,看到只输出This is a function in the module.
,而不会看到This module is being run as a script.
这条信息,因为if __name__ == '__main__':
后的代码块没有被执行。
import my_module
my_module.my_function()