Python模块相关知识点小结

张开发
2026/4/18 23:55:24 15 分钟阅读

分享文章

Python模块相关知识点小结
本文实例讲述了Python模块相关知识点。分享给大家供大家参考具体如下1.模块定义用来从逻辑上组织python代码变量,函数类逻辑实现一个功能本质就是以.py结尾的python文件文件名test.py,对应的模块名test。包用来从逻辑上组织模块的本质就是文件夹目录必须带有一个__init__.py文件。导入包的本质就是解释这个包下面的__init__.py文件。在某个模块下需要导入某一个包下面的内容需要在包下面的__init__.py文件中修改导入方式语法为from . import module_name #.表示当前路径下模块导入方法123456789Import module_name模块名实质导出的是模块名称 name.test()Import module_namem1,m2frommodule模块import*函数实质是把代码复制到当前位置不建议 frommoduleimportmodule_name,m1,m2frommoduleimportmodule_name as modele_name_from_wfb (as取别名)import本质(路径搜索和搜索路径)1Import module_name 》把导入的模块的全部代码统一解释一遍然后赋值给module_name这个变量例如module_name”modele_name.py all code。【module_name.name】Import module_name----执行module_name.py----module_name.py的路径---sys.path2from module import module_name 》把module 模块中的module_name部分放到当前文件执行一遍。【name】总结导入模块的本质就是把python文件解释一遍。2.导入不在同一目录下的文件或者包由于导入模块或包的实质是在系统的环境变量路径下寻找所导入的文件或者是否存在存在即可正确执行否则则需要将文件或者包的绝对路径动态加入到系统的环境变量中。使用sys,os模块12345Import sys,oslujinos.path.dirname(os.path.abspath(__file__))Sys.path.append(lujin)目的是在当前文件中获得指定文件或包的路径父级目录。解释os.path.abspath(__file__) 获取当前文件的绝对路径os.path.dirname获取当前文件的父级目录。Sys.path.append(lujin)将所获取的路径加入到系统环境变量中。3.导入优化(1) Import module_namemodule_name.name()。。实质先找模块在找该模块下的方法.【查找多了效率不高。】(2) from module_name import namename() 。。实质把模块中的方法拿到指定位置执行一遍。相比import少了多次查找的过程.4.模块分类a.标准库内置1 time 和datetime.gmtime():获取标准时间0时区localtime():获取本地时间东八区time.strftime(%Y-%m-%d %H:%M:%S,time.gmtime()) # %Y对应tm_year %m对应tm.mon5.json和pickle模块Json模块提供了四个功能dumps、dump、loads、loadpickle模块提供了四个功能dumps、dump、loads、load.json和pickle模块只建议dumps和loads一次否则需要根据之前的顺序依次取出来很麻烦dumps序列化为字符串。6. shelve模块shelve模块是一个简单的k,v将内存数据通过文件持久化的模块可以持久化任何pickle可支持的python数据格式【可理解为可以实现多次的dumps和、loads】使用》123importshelvedshelve.open(shelve_test)#打开一个文件存d[“key”]value取d,get(“key”)加密模块hashlib模块对中/英文的加密1234567importhashlibmhashlib.md5()m.update(bHello)m.update(Its me 你好.encode(encodingutf-8))对信息的加密123importhmacmhmac.new(b天王盖地虎,宝塔镇河妖.encode(encodingutf-8)b天王盖地虎:必须是bytes类型宝塔镇河妖.encode(encodingutf-8对含有中文的需要进行编码encode成二进制。主要是有无b的区别。

更多文章