模块和包,导入,hash,sys模块,错误处理
- 模块的名字一般是小写字母
- 一般都是把相关功能放在一起
- 自定义模块
- 模块的导入
- 项目代码组织
- 项目------文件夹-------文件------函数------代码
- 多个.py文件放到一个文件夹中
- 多个文件夹形成项目
- 代码组织形式是模块化的,一般根据功能划分模块
- 项目------文件夹-------文件------函数------代码
- 模块其实就是.py文件,包就是存储Python文件的文件夹(目录)
- 导入问题
- from从项目的根目录开始搜
- 自定义包和模块使用from-包名.模块名-import--函数名,类名,变量
- from 包名 import 模块,调用加模块前缀
- from ----- import * 不要使用,容易冲突
- from从项目的根目录开始搜
- 模块名和包名
- 规范基本和变量相同,不要用数字开头
- 不要和内置模块、第三方模块名冲突
- 规范基本和变量相同,不要用数字开头
- PEP8规范
- 直接import 模块名
- from 模块名 import 方法名1,方法名2
- from 模块名 import 方法名1 as 别名1,方法名2 as 别名2
- from 模块名 import *
- 模块命名规范和变量命名规范一样,不要以数字开头
- 模块不要放在文件夹内
- 和当前文件在同一个目录下,直接import导入,可以当执行文件也可以当模块
- 和当前文件在不同目录下python相对导入常见问题和解决方案 - 知乎 (zhihu.com)
- 当执行文件,,使用绝对导入(不以.开头)
- 当模块供当前文件用,,使用相对导入(以.开头)
- 当执行文件,,使用绝对导入(不以.开头)
- 循环引用问题
- https://www.bbsmax.com/A/RnJWeVeodq/
- https://www.bbsmax.com/A/RnJWeVeodq/
- 项目代码组织
- 错误处理
- try expect
- try expect
- 哈希模块(3条消息) python的hash模块_乐石风华的博客-CSDN博客
- m = heshlib.md5()--------实例化,建立hash工厂
- m.update( .encode('utf-8'))放入材料,要投入二进制,所以字符串要编码
- m = heshlib.md5()--------实例化,建立hash工厂
- sys模块
- sys.modules 显示当前执行代码的位置,解释器中导入的所有的模块都会被放到字典里,描述当前解释器加载到内存中的所有模块
- sys.path所有内置模块的路径组成的列表,从左到右依次去找,pycharm会自动添加当前路径到列表中,决定一个模块是不是能被导入
- sys.argv可以从程序的外部输入调试程序
- sys.modules 显示当前执行代码的位置,解释器中导入的所有的模块都会被放到字典里,描述当前解释器加载到内存中的所有模块