1. 模块
模块化指将一个完整的程序分解成一个个的小模块。
通过将模块组合,来搭建出一个完整的程序。
模块化的优点:
- 方便开发
- 方便维护
- 模块可以复用
2. 模块的创建
在Python当中一个py文件就是一个模块。
在一个模块中引入外部模块语法: import 模块名(模块名就是py文件)
可以引入同一个模块多次,但是模块的实例只会创建一次。
import 模块名 as 模块别名
在一个模块内部都有一个__name__,通过它我们可以获取模块的名字。如果py文件直接运行时,那么__name__默认等于字符串’main’。__name__属性值为__main__的模块是主模块。一个程序中只有一个主模块。
import guess
import guess as a
print(__name__)# __main__
print(a) # NameError: name 'guess' is not defined
3.模块的使用
访问模块中的变量 语法是 模块名.变量名
访问模块中的函数 语法是 模块名.函数名
访问模块中的对象 语法是 模块名.对象名
我们也可以引入模块中部分内容 语法 from 模块名 import 变量,变量…还有一种引入方式 语法 from 模块名 import 变量 as 别名
五种引入模块的方法:
1.import xxx
2.import xxx as yyy
3.from xxx import yyy,zzz,fff
4.from xxx import yyy as zzz
5.from xxx import *
import test_m
# 访问模块中的变量 语法 模块名.变量名
def test2():
print('我是主模块中的test2....')
print(test_m.a,test_m.b)
# 访问模块中的函数 语法 模块名.函数名
test_m.test1()
test_m.test2()
# 访问模块中的对象 语法 模块名.对象名
p = test_m.Person()
print(p.name)
我们也可以引入模块中的部分内容
# 语法 from 模块名 import 变量名,变量名,变量名.....
from test_m import Person
print(test_m) # NameError: name 'test_m' is not defined
from test_m import test1
p1 = Person()
print(p1)
test1()
from test_m import Person,test1,test2
from test_m import *
# 语法 from 模块名 import 变量名 as 别名
from test_m import test2 as new_test2
test2()
new_test2()