Python—4、模块和包

Python—4、模块和包 Python开发-函数使用模块模块导入包导入模块模块导入模块导入方式如下三种frommoduleimportfun1,fun2,fun3frommoduleimport*importmodule__name__属性一个模块被其他程序第一次引入时其主程序将运行。如果我们想在模块被引入时模块中的某一程序块不执行我们可以用__name__属性来使该程序块仅在该模块自身运行时执行。#!/usr/bin/python3defDisplayCore():if__name____main__:print(My main function body is running!)else:passreturn说明 每个模块都有一个__name__属性当其值是__main__时表明该模块自身在运行否则是被引入。说明__name__ 与 __main__ 底下是双下划线 _ _ 是这样去掉中间的那个空格。特殊场景如果被导入的模块只有类或者函数的定义没有 类或者函数的调用以及 print 等的内容输出那么即使模块被其他模块导入也不会自动运行但是建议每个模块都加一个 __name__ 与 __main__ 的判断如下所示# my_module.pydefgreet(name):returnfHello,{name}!defadd(a,b):returnabif__name____main__:# 这里什么都不写只留一个注释# 直接运行这个文件时什么都不会发生pass# 其实可以不写 pass但 Python 语法要求代码块不能为空所以至少要写 pass 或 ...包导入包是一种管理 Python 模块命名空间的形式方式一frompkg_par.pkg_son.moduleimportfun1说明这种导入方式 函数 fun1 可以直接使用方式二frompkg_par.pkg_sonimportmodule.fun1说明这种导入方式 函数 fun1 需要按照 module.fun1 的方式使用方式三importpkg_par.pkg_son.module.fun1说明这种导入方式 函数 fun1 需要按照全路径使用pkg_par.pkg_son.module.fun1强调模块相对路径导入只能使用from xx.xx.xx import xx的方式不能直接使用import ..xx.xx.xx的方式 over