Python3笔记044

第8章 模块

8.1 模块与包

模块

在python中,一个扩展名为.py的文件就称之为一个模块,模块的英文是modules

在python中,模块有两个作用:一个是规范代码,另一个是方便其他程序使用已经编写好的代码。

1、创建模块

模块名+.py的形式命名,文件内部有变量定义或函数定义或类定义。

2、导入模块

import modulename [as alias]

在使用import语句导入模块时,每执行一条import语句都会创建一个新的命名空间,并且在该命名空间中执行与.py文件相关的所有语句。在执行时,需在具体的变量、函数、类名前加上模块名.前缀。

如果不想在每次导入模块时都创建一个新的命名空间,而是将具体的定义导入到当前的命名空间中,这时可以用from...import语句。

from modulename import member

导入支持通配符*,导入该模块里的所有内容

from modulename import *

3、查找模块的规则

当使用import语句导入模块时,默认情况下,会按照以下顺序进行查找。

  • 在当前目录下查找。
  • PYTHONPATH下的每个目录中查找。
  • 到python的默认安装目录下查找。

以上各个目录的具体位置保存在标准模块sys的sys.path变量中,

可以通过以下代码输出具体的目录

import sys # 导入标准模块sys
print(sys.path) # 输出具体目录
output:
'''
D:1Pythonpythonbasic
D:1Python
D:Program FilesPythonpython37.zip
D:Program FilesPythonDLLs
D:Program FilesPythonlib
D:Program FilesPython
D:Program FilesPythonlibsite-packages
'''

PYTHONPATH环境变量中添加指定的目录到sys.path

# 第一种方法添加路径
sys.path.append()
# 第二种方法:将自定义的模块放到第三方库site-packages的目录下
D:Program FilesPythonlibsite-packages

4、下载和使用第三方模块

pip <comand> [modulename]

比如安装numpy

pip install numpy
pip list
import numpy

包简单理解就是文件夹,只不过在该文件夹下必须存在一个名称为__init__.py的文件。

包的作用是将一组功能相近的模块放在一个目录下。

1、创建包

创建包实际上就是创建一个文件夹,并且在该文件夹中创建一个名称为__init.py_的python文件。在__init__.py中,可以不编写任何代码,也可编写,在导入包时会自动执行。

2、导入包

import 完整包名.模块名
from 完整包名 import 模块名
from 完整包名.模块名 import 定义名
原文地址:https://www.cnblogs.com/infuture/p/13383439.html