1、什么是模块函数
模块,简单而言,就是别人写好的py文件,咱们只须要引入这个模块,就可使用。测试
2、模块的引入spa
同其余语言同样,咱们使用import关键字来引入模块。语法格式为: import 模块名 code
须要引入多个模块时,也能够这样写:import 模块名1,模块名2..blog
注意:import 语句必须出如今文件最开始的地方字符串
3、引入模块时作了哪些事情?requests
一、执行模块.py文件class
二、引入函数名、变量名test
(通常状况下,在模块中通常只定义函数而不执行函数,固然也会能够定义变量)import
4、调用模块中的属性和方法
语法格式为:模块名.函数名
为何要采用这种方式呢?假设这样一种状况,咱们同时引入两个不一样的模块A,B(包的名字不一样),可是他们有一个相同名字的方法F,咱们须要调用的是A中的方法F而不是B中的方法F,若是只是采用F函数名的方式调用的话,则会出现歧义。所以,使用模块名.函数名的方式,能进行区分。
有时侯,咱们只须要模块中的某个函数,只须要引入该函数便可,咱们能够采用如下语句:from 模块名 import 函数名1,函数名2..
使用 from 模块名 import *能够引入该模块中全部的方法,可是不推荐。
5、__name__变量
1.若是模块是被导入,__name__的值是模块名
2.若是模块是被直接执行,__name__的值是"__main__"
#这个是test.py里面的代码 def playLOL(): print("铁骨铮铮王靖泽"); print(__name__); if __name__=="__main__": playLOL()
#这个是执行文件里的代码 import test; def listenMusic(): print("这歌真好听"); print(__name__) if __name__=="__main__": test.playLOL(); listenMusic();
执行结果为:
test
__main__
铁骨铮铮王靖泽
这歌真好听
经过这个特性能够在if语句里面添加测试代码,能够减小bug,提升程序的健壮性。
6、动态导入模块
为何要使用动态导入模块?
1.import不能接受变量。
2.import只能导入已经安装的模块,若是导入的模块未安装则报错
动态导入模块的方式:
1.动态导入一个模块可使用__import__()函数。
__import__()函数须要接收一个字符串参数。
os=__import__("os");
re=__import__("re")
2.动态导入一个模块列表
moduleNames=["sys","requests","re","os"] modules=map(__import__(),moduleNames)