一、模块&包简介
- 模块:所谓模块就是一个.py文件,用来存放变量,方法的文件,便于在其他python文件中导入(通过import或from)。
- 包(package): 包是更大的组织单位,用来组织区别管理多个模块文件。
- import 用来导入模块
- from 用于从模块中导入方法(全部或部分),也可用as 重命名导入的方法名
二、import&from使用方法
1. import使用方法:
*import 模块 [as 别名模块]
*import 包.[N包].模块;
注:import 导入 最后一个必须是模块,而不能以包结尾
a)导入单模块文件(import 模块 [as 别名模块])
import导入单模块文件后,在import时会执行模块中的代码(从上到下)
b)导入包中的模块(import 包.[N包].模块)
import导入包中的模块时,首先会执行包下的__init__.py
注:__init__.py :用来给包做一些初始化的工作。可以为空,但必须要有
c)导入 包.包.模块
import导入多层包中的模块时,会执行各包下的__init__.py
d)导入 包.包
出错
2. from使用方法:
*from 包.[..包] import 模块
*from 包.模块 import 方法
*from 模块 import 方法。
注:from 包 import *时,受__init__.py中的__all__影响,没有列出来的模块是没法导入引用的。
三、import&from使用示例
在python中,模块就是以.py文件为后缀名并包含python代码的文件。假设我们有以下模块:
# some_module.py
PI=3.14159
def f(x):
return x+2
def g(a,b)
return a+b
假设我们想从另一个相同路径下的文件连接到some_module.py中定义的变量和函数,我们可以这样做:
import some_module
result = some_module.f(5)
pi=some_module.PI
或者:
from some_module import f,g,PI
result = g(5,PI)
通过使用as关键字,你可以对导入内容给予不同的变量名:
import some_module as sm
from some_module import PI as pi, g as gf
r1=sm.f(pi)
r2=gf(6,pi)