Python模块相关知识点小结


Posted in Python onMarch 09, 2020

本文实例讲述了Python模块相关知识点。分享给大家供大家参考,具体如下:

1.模块

定义:用来从逻辑上组织python代码(变量,函数,类,逻辑:实现一个功能),本质就是以.py结尾的python文件(文件名:test.py,对应的模块名:test)。

:用来从逻辑上组织模块的,本质就是文件夹(目录),必须带有一个__init__.py文件。

导入包的本质就是解释这个包下面的__init__.py文件。

在某个模块下需要导入某一个包下面的内容,需要在包下面的__init__.py文件中修改导入方式,语法为:from . import module_name   #.表示当前路径下

模块导入方法

Import module_name(模块名)===>>实质导出的是模块名称 name.test()

Import module_name,m1,m2

from module(模块) import * (函数)===>实质是把代码复制到当前位置(不建议 )

from module import module_name,m1,m2 

from module import module_name  as modele_name_from_wfb (as取别名)

import本质(路径搜索和搜索路径):

(1)Import  module_name   ===》把导入的模块的全部代码统一解释一遍,然后赋值给module_name这个变量,例如:module_name=”modele_name.py all code"。【module_name.name】

Import module_name---->执行module_name.py---->module_name.py的路径---sys.path

(2)from  module  import  module_name ==》把module 模块中的module_name部分放到当前文件执行一遍。【name()】

总结:导入模块的本质就是把python文件解释一遍。

2.导入不在同一目录下的文件或者包:

由于导入模块或包的实质是在系统的环境变量(路径)下寻找所导入的文件或者是否存在,存在即可正确执行,否则则需要将文件或者包的绝对路径动态加入到系统的环境变量中。使用sys,os模块

Import sys,os
lujin=os.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_name   

module_name.name()。。

实质:先找模块,在找该模块下的方法.【查找多了效率不高。】

(2)  from module_name import name

name() 。。

实质:把模块中的方法拿到指定位置执行一遍。相比import少了多次查找的过程.

4.模块分类

a.标准库(内置)

1. time 和datetime.  

   gmtime():获取标准时间(0时区)

  localtime():获取本地时间(东八区)

  time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime())  # %Y对应tm_year  %m对应tm.mon

Python模块相关知识点小结

Python模块相关知识点小结

 

 5.json和pickle模块

Json模块提供了四个功能:dumps、dump、loads、load

pickle模块提供了四个功能:dumps、dump、loads、load

.json和pickle模块只建议dumps和loads一次,否则需要根据之前的顺序依次取出来很麻烦,dumps序列化为字符串。

  6. shelve模块

shelve模块是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式,【可理解为可以实现多次的dumps和、loads】

使用=》

import shelve

d = shelve.open('shelve_test') #打开一个文件

存:d[“key”]=value

取:d,get(“key”)    

加密模块

hashlib模块

对中/英文的加密:

import hashlib

m=hashlib.md5()

m.update(b"Hello")

m.update("It's me 你好".encode(encoding='utf-8'))

对信息的加密:

import hmac

m=hmac.new(b'天王盖地虎', '宝塔镇河妖'.encode(encoding='utf-8')

b'天王盖地虎':必须是bytes类型

'宝塔镇河妖'.encode(encoding='utf-8':对含有中文的需要进行编码(encode)成二进制。主要是有无b的区别。

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python实现删除文件与目录的方法
Nov 10 Python
用Python实现随机森林算法的示例
Aug 24 Python
Python Paramiko模块的使用实际案例
Feb 01 Python
Python iter()函数用法实例分析
Mar 17 Python
如何利用Python模拟GitHub登录详解
Jul 15 Python
详解Pycharm出现out of memory的终极解决方法
Mar 03 Python
django 扩展user用户字段inlines方式
Mar 30 Python
Python如何用wx模块创建文本编辑器
Jun 07 Python
python中如何设置代码自动提示
Jul 15 Python
套娃式文件夹如何通过Python批量处理
Aug 23 Python
如何基于python实现年会抽奖工具
Oct 20 Python
Python爬虫之爬取某文库文档数据
Apr 21 Python
Django操作session 的方法
Mar 09 #Python
Python装饰器用法与知识点小结
Mar 09 #Python
Django中的session用法详解
Mar 09 #Python
python实现引用其他路径包里面的模块
Mar 09 #Python
python+opencv边缘提取与各函数参数解析
Mar 09 #Python
python爬虫开发之Beautiful Soup模块从安装到详细使用方法与实例
Mar 09 #Python
Pycharm+Python工程,引用子模块的实现
Mar 09 #Python
You might like
VOLVO车载收音机
2021/03/02 无线电
PHP 字符串正则替换函数preg_replace使用说明
2011/07/15 PHP
php实现zip压缩文件解压缩代码分享(简单易懂)
2014/05/10 PHP
jQuery向下滚动即时加载内容实现的瀑布流效果
2016/01/07 PHP
php实现简单的权限管理的示例代码
2017/08/25 PHP
javascript SocialHistory 检查访问者是否访问过某站点
2008/08/02 Javascript
js单独获取一个checkbox看其是否被选中
2014/09/22 Javascript
JavaScript多线程详解
2015/08/12 Javascript
JavaScript学习笔记之DOM基础 2.4
2015/08/14 Javascript
jquery简单插件制作(fn.extend)完整实例
2016/05/24 Javascript
jQuery查看选中对象HTML代码的方法
2016/06/17 Javascript
Angularjs 自定义服务的三种方式(推荐)
2016/08/02 Javascript
微信小程序开发入门基础教程
2017/04/19 Javascript
jQuery中的类名选择器(.class)用法简单示例
2018/05/14 jQuery
vue-cli3脚手架的配置及使用教程
2018/08/28 Javascript
vue-cli安装使用流程步骤详解
2018/11/08 Javascript
Vue实现移动端页面切换效果【推荐】
2018/11/13 Javascript
Vue Autocomplete 自动完成功能简单示例
2019/05/25 Javascript
vue 路由子组件created和mounted不起作用的解决方法
2019/11/05 Javascript
解决Vue中的生命周期beforeDestory不触发的问题
2020/07/21 Javascript
Electron+vue从零开始打造一个本地播放器的方法示例
2020/10/27 Javascript
python批量同步web服务器代码核心程序
2014/09/01 Python
Python实现PS滤镜特效之扇形变换效果示例
2018/01/26 Python
Matplotlib绘制雷达图和三维图的示例代码
2020/01/07 Python
Python 实现敏感目录扫描的示例代码
2020/05/21 Python
keras小技巧——获取某一个网络层的输出方式
2020/05/23 Python
利用简洁的图片预加载组件提升html5移动页面的用户体验
2016/03/11 HTML / CSS
有影响力的品牌之家:Our Social Collective
2019/06/08 全球购物
Seavenger官网:潜水服、浮潜、靴子和袜子
2020/03/05 全球购物
C&A巴西网上商店:时尚、衣服、手机和鞋子
2020/06/07 全球购物
师范生自荐信范文
2013/10/06 职场文书
化学专业毕业生自荐信
2013/11/15 职场文书
环境工程专业毕业生求职信
2014/09/30 职场文书
社区务虚会发言材料
2014/10/20 职场文书
三八妇女节慰问信
2015/02/14 职场文书
初中语文教学随笔
2015/08/15 职场文书