栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python,day3,模块介绍

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python,day3,模块介绍

#当python文件被运行时 __name__的值为 __main__ #当python文件被当作模块导入时 __name__的值为python的文件的值 if __name__ __main__ : print( 文件被执行 ) else: print( 文件被导入 ) 3、模块导入方式
#import ; from...import.....
 #1、import导入模块在使用时必须加前缀 模块 
 #优点 肯定不会与当前名称空间中的名字冲突
 #缺点 加前缀显得麻烦
 #2、from...import...导入也发生三件事
 #1、产生一个名称空间
 #2、运行func.py将运行过程中产生的名字都丢到模块的名称空间中
 #3、在当前名称空间拿到一个名字 该名字与模块命名空间中的某一个内存地址
 from func import binary_search
 #优点 代码更精简
 #缺点 容易与当前命名空间混淆
4、模块的循环导入问题
#循环导入问题(无论那种方案都是垃圾 最好不要用)
 #1、第一种方案
 #m1.py
 print( 正在输入m1 )
 x a1 
 from m2 import y
 #m2.py
 print( 正在输入m2 )
 y m2 
 from m1 import x
 #2、第二种方案 推荐 
 #将导入语句放在函数里
 print( 正在导入m1 )
 def f1():
 from m2 import y
 pprint(y)
 x m1 
5、搜索模块的路径与优先级
#搜索模块的路径与优先级
 #1、无论是import还是from...import在导入模块时都涉及到查找问题
 #优先级 
 #1、内存 内置模块 
 #2、从硬盘找 按照sys.path中存放的文件顺序依次寻找要导入的模块 
 import sys
 #值为一个列表 存放了一系列的文件夹
 #其中第一个文件夹是当前执行文件所在的文件夹
 print(sys.path)
 #3、了解 sys.modules查看已经加载到内存中的模块
 import sys
 print(sys.modules)
 #使用sys.path到模块
 import sys
 sys.path.append(r D:pycharmday3func.py )
 import func
 func.binary_search()
6、编写一个模块的规范
#编写一个模块的规范
 the module is used to... #模块的文档描述
 import sys #导入模块
 x 1 #定义全局变量
 class foo: #定义类 并写好类的注释
 class foo is used to... 
 pass
 def test() #定义函数 并写好函数注释
 function test is used to.. 
 pass
 if __name__ __main__ : #主程序
 test() #在被当作脚本执行时 执行此处代码
7、包
#包
 #1、包就是一个包含有__init__.py文件的文件夹
 #2、为何要有包
 #的本质是模块的一种形式 包是用来当作模块导入
 #作为模块的设计者 模块的功能越来越多时 需要很好管理自己的模块 以文件的方式管理 但还需要暴露给使用者还应该是一个模块
 #3、包的导入 
 #以下导入都是在包内的__init__.py文件内的导入
 #绝对导入 以包的文件夹作为起始导入点
 from w.a.b import xxx
 import w.a.b
 #其中点的左边都必须是包
 #相对导入:仅限于包内使用 不能跨出包(包内模块之间的导入推荐相对导入)
 #. 代表当前文件夹
 #..:代表上一层文件夹
 from .m1 import f1
 from ...m1 import f1
8、软件开发的目录规范
#软件开发的目录规范
 #bin 该目录放一些可执行文件
 #conf 项目的配置文件
 #db 存放数据库相关的操作代码
 #lib 存放程序常用的库 模块 
 #core 存放核心代码的逻辑
 #如何获取父级模块
 import os
 import sys
 base_DIR os.path.dirname(os.path.dirname(__file__))
 sys.path.append(base_DIR)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/267883.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号