Python 面试题, 什么是 Python 中的模块和包?
Python 面试题, 什么是 Python 中的模块和包?
QA
Step 1
Q:: 什么是Python中的模块?
A:: 在Python中,模块是一个包含Python定义和语句的文件。模块可以定义函数、类和变量,也可以包含可执行的代码。模块使得代码更加模块化和组织良好,便于代码的重用。通常,模块以.py
文件形式存在,每个模块对应一个独立的文件。例如,一个名为module.py
的文件就是一个Python模块,可以通过import module
来加载使用。
Step 2
Q:: 什么是Python中的包?
A:: 包是一个包含多个模块的目录,并且包含一个名为__init__.py
的特殊文件。包使得模块的命名空间更加结构化和层次化,便于组织大型项目。通过使用包,开发者可以将相关的模块归类到一个公共命名空间下。例如,一个名为mypackage
的目录中包含__init__.py
文件和其他模块(如module1.py
、module2.py
),就形成了一个包,模块可以通过import mypackage.module1
的方式导入。
Step 3
Q:: 如何创建一个自定义模块?
A:: 创建自定义模块很简单,只需创建一个包含Python代码的.py
文件即可。例如,你可以创建一个名为mymodule.py
的文件,内部包含函数定义和变量。创建后,你可以在其他Python文件中使用import mymodule
来加载并使用其中的功能。
Step 4
Q:: 包与模块之间的区别是什么?
A:: 模块是单个的Python文件,包含了代码、函数、类和变量等;而包是一个包含多个模块的目录,目录中通常包含一个__init__.py
文件。模块可以单独存在并直接导入使用,而包则是一种组织模块的方式,用于结构化大型应用程序。
Step 5
Q:: 如何在Python中导入模块和包?
A:: 导入模块可以使用import module_name
或from module_name import specific_name
的方式,导入包中的模块则使用import package_name.module_name
或from package_name import module_name
。使用import
语句后,就可以通过module_name.function_name()
的方式调用模块中的函数。