十、Python-模块
模块(Modules):通常把能够实现某一特定功能的代码放置在一个文件中作为一个模块,从而方便其他程序和脚本导入并使用(也能避免函数名和变量名冲突) Python中,一个扩展名为.py的文件就称为一个模块(一个模块可以含有多个函数) 模块可以提高代码的可维护性(拆分为多个文件);提高代码可重用性(其他地方需要的时候导入即可) 一、自定义模块:可规范代码,让代码更易阅读;方便其他程序员使用已编好的代码,提高开发效率 创建模块:将相关代码(变量和函数定义等)编写在一个单独文件中,并将文件命名为:模块名.py 使用import导入模块:使用模块需先模块的形式加载模块中的代码 import modulename [as alias] modulename:为要导入模块的名字 [as alias]:为给模块起的别名(通过别名也能使用该模块) 在使用模块中的变量、函数时或者类时,需在变量名、函数名或类名前添加“模块名.”做前缀;import语句可以一次导入多个模块(使用“,”隔开) eg:import bmi #导入bmi模块 bmi.fun_bmi("张三",1.75,120) #执行模块中的fun_bmi()函数 eg:import bmi as m #导入bmi模块并命名别为为m m.fun_bmi("张三",1.75,120) #执行模块中的fun_bmi()函数 使用from … import语句导入模块: 该语句导入模块,不需要再添加前缀,直接通过具体的变量、函数和类名等访问即可(import直接导入时,每一条import语句都会创建一个新的命名空间(namespace),且在该命名空间中执行与.py文件相关的所有语句,在执行时,需在具体的变量、函数和类名前加上“模块名.”) 命名空间可以理解为记录对象名字和对象之间对应关系的空间(Python的命名空间大都是通过字典(dict)实现,key是标识符,value是具体对象) from modelname import member modelname:模块名称,区分大小写,需和定义模块时设置的模块名称大小写一致 member:用于指定要导入的变量、函数名或类等(多个时用“,”隔开,全部导入可使用通配符“*”代替,要查看导入了哪些定义,可以使用dir()的值来查看:print(dir())) from bmi import fun_bmi #导入bmi模块的fun_bmi函数 from bmi import fun_bmi,fun_bmi_upgrade #导入bmi中的……函数 from bmi import * #导入bmi中的所有函数 使用from … import … 语句时,需要保证所有导入的内容在当前命名空间中是唯一的,否则将会出现冲突,后导入的同名变量、函数或类会覆盖先导入的 模块搜索目录:导入模块时的查找顺序:
第三方模块的下载和安装:安装好后就可以像标准模块一样使用 可以访问最新网站:https://pypi.org去查找库 命令:pip <command> [modulename] #cmd中直接使用 command参数:install:安装模块;uninstall:卸载第三方模块;list:显示第三方模块 modulename:用于指定要安装或卸载的模块名 导入模块一般先导入标准模块,再导入第三方模块,然后导入自定义模块
扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄
- 当前目录(执行的Python脚本所在目录)下查找
- 到PYTHONPATH(环境变量)下的每个目录中查找
- 到Python的默认安装目录下查找(这些目录的具体位置保存在标准模块sys的sys.path变量中,可以通过以下代母输出具体目录)


更多精彩