python基础之模块的导入

1. 介绍

Python是一种面向对象的高级编程语言,具有简单易学、简洁明了、功能强大、可移植性好、扩展性强等特点。Python作为一种高级语言,具有非常强大的库功能,其中模块(module)是Python库的一种基本组成单元,是将相关的函数、类、变量等封装在一起,使之成为一个独立的代码单位,便于使用和维护。模块使得代码更加清晰易懂,可重用性更高,同时也方便别的程序员使用你编写的代码。

2. 模块的导入方式

2.1 import 语句

在Python中,要使用某个模块的功能,需要将其导入(import)到当前的程序中。导入模块的语法格式为:

import 模块名

其中,模块名指的是当前程序中要导入的模块的名称。例如,要导入数学模块math,可以使用如下代码:

import math

导入模块之后,就可以使用该模块中的函数、类、变量等了。例如,使用数学模块中的sqrt函数来求一个数的平方根:

import math  # 导入math模块

x = 16

y = math.sqrt(x) # 使用math模块中的sqrt函数

print(y) # 输出4.0

2.2 from-import 语句

另一种导入模块的方式是使用from-import语句,它可以将特定的函数、类、变量等导入到当前程序的命名空间中。其语法格式为:

from 模块名 import 函数名/类名/变量名

其中,函数名/类名/变量名是要导入到当前程序的命名空间中的名称。例如,要导入数学模块中的sqrt函数,可以使用如下代码:

from math import sqrt

x = 16

y = sqrt(x) # 直接使用sqrt函数,不需要再加上math模块

print(y) # 输出4.0

需要注意的是,使用from-import语句导入的函数、类、变量等,在当前程序的命名空间中直接可见,而不必再使用模块名作为前缀。

3. 模块搜索路径

在Python中,为了让程序能够在任何地方导入外部模块,Python解释器需要知道模块搜索路径,也就是它需要在何处搜索导入的模块。模块搜索路径是一个由目录名组成的列表,Python解释器会按照列表中的顺序依次搜索每个目录,直到找到指定的模块为止。

3.1 模块搜索路径的顺序

当导入一个模块时,Python解释器按照以下顺序搜索目录:

当前目录

Python标准库

操作系统环境变量PYTHONPATH中指定的目录(如果有)

Python安装目录下的site-packages目录

3.2 查看模块搜索路径

要查看模块搜索路径,可以使用sys模块中的path变量。

import sys

print(sys.path)

运行结果类似于:

['', '/usr/local/lib/python39.zip', '/usr/local/lib/python3.9', '/usr/local/lib/python3.9/lib-dynload',

'/usr/local/lib/python3.9/site-packages']

其中,空字符串''表示当前目录,其余的目录依次表示Python标准库、PYTHONPATH环境变量中指定的目录、site-packages目录等。

4. 别名

在导入模块时,可以给模块起别名(alias),让代码更加简洁易懂。例如,可以将numpy模块起名为np

import numpy as np  # 将numpy模块起名为np

a = np.array([1, 2, 3])

print(a) # 输出[1 2 3]

5. 总结

模块是Python库中的一种基本组成单元,是将相关的函数、类、变量等封装在一起,方便重用和维护。在Python中,要使用某个模块的功能,需要使用import语句将其导入到当前程序中。另一种导入模块的方式是使用from-import语句,它可以将特定的函数、类、变量等导入到当前程序的命名空间中。Python解释器会按照一定顺序搜索模块,找到对应的模块之后,就可以在程序中使用该模块中的函数、类、变量等了。

后端开发标签