python导入模块的方式
在python开发中,巧用模块导入可简化开发,提高开发效率。下面简介下模块使用使用事项:
一、模块的使用:
- 模块 就好⽐是 ⼯具包,要想使⽤这个⼯具包中的⼯具,就需要 使用import导⼊ 这个模块
- 每⼀个以扩展名 py 结尾的 Python 源代码⽂件都是⼀个 模块
- 在模块中定义的 全局变量 、 函数 都是模块能够提供给外界直接使⽤的⼯具。
二、模块命名注意事项:
- 标⽰符可以由 字⺟、下划线 和 数字 组成
- 不能以数字开头
- 不能与关键字重名
- 模块要导入其他模块,则模块名不能与要导入的模块重名,如模块中要导入random模块,那么模块名就不能起random.
三、模块导入的方式:
1. 基本导入
-
导入整个模块,使用时需通过模块名访问其内容。
-
示例:
import math
print(math.sqrt(16)) # 输出: 4.0
2. 导入特定内容
from 接模块名,import接模块中函数名,全局变量名...
from module_name import name1, name2, ...
-
从模块中导入指定的函数、类或变量,使用时无需写模块名前缀。
-
示例:
from math import sqrt
print(sqrt(16)) # 输出: 4.0
3. 导入所有内容
from module_name import *
-
导入模块中的所有内容,使用时无需模块名前缀。
-
示例:
from math import *
print(sqrt(16)) # 输出: 4.0
-
注意:不推荐使用,可能导致命名冲突。
4. 为模块指定别名导入
import module_name as alias
-
为模块设置别名,简化代码。
-
示例:
import numpy as np
print(np.array([1, 2, 3])) # 输出: [1 2 3]
5. 导入特定内容并设置别名
from module_name import name as alias
-
为导入的特定内容设置别名。
-
示例:
from math import sqrt as sq
print(sq(16)) # 输出: 4.0
6. 相对导入(在包内使用)
from . import module_name
from .. import module_name
-
在包内使用相对路径导入模块。
-
示例:
from .submodule import function_name
7. 动态导入
-
动态导入模块,适用于模块名在运行时确定的情况。
-
示例:
module_name = 'math'
module = __import__(module_name)
print(module.sqrt(16)) # 输出: 4.0
8. 使用 importlib
动态导入
import importlib
module = importlib.import_module('module_name')
-
通过
importlib
动态导入模块。 -
示例:
import importlib
module_name = 'math'
module = importlib.import_module(module_name)
print(module.sqrt(16)) # 输出: 4.0