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通过BF算法实现关键词匹配的方法
Mar 13 Python
Python MySQLdb Linux下安装笔记
May 09 Python
轻松实现python搭建微信公众平台
Feb 16 Python
python实现读取并显示图片的两种方法
Jan 13 Python
python使用opencv读取图片的实例
Aug 17 Python
用python实现百度翻译的示例代码
Mar 09 Python
深入浅析Python2.x和3.x版本的主要区别
Nov 30 Python
python实现合并多个list及合并多个django QuerySet的方法示例
Jun 11 Python
Python实现密码薄文件读写操作
Dec 16 Python
django实现模型字段动态choice的操作
Apr 01 Python
python dict如何定义
Sep 02 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
Oct 20 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
水质对咖图啡风味的影响具体有哪些
2021/03/03 冲泡冲煮
抓取YAHOO股票报价的类
2009/05/15 PHP
php写入数据到CSV文件的方法
2015/03/14 PHP
关于php 高并发解决的一点思路
2017/04/16 PHP
PHP在同一域名下两个不同的项目做独立登录机制详解
2017/09/22 PHP
Thinkphp 框架扩展之标签库驱动原理与用法分析
2020/04/23 PHP
如何用js控制css中的float的代码
2007/08/16 Javascript
jquery中常用的函数和属性详细解析
2014/03/07 Javascript
JS实现黑色风格的网页TAB选项卡效果代码
2015/10/09 Javascript
JavaScript学习笔记之创建对象
2016/03/25 Javascript
使用jQuery实现Web页面换肤功能的要点解析
2016/05/12 Javascript
Angular2平滑升级到Angular4的步骤详解
2017/03/29 Javascript
js + css实现标签内容切换功能(实例讲解)
2017/10/09 Javascript
详解vue表单——小白速看
2018/04/08 Javascript
详解JavaScript 异步编程
2020/07/13 Javascript
在vue中使用回调函数,this调用无效的解决
2020/08/11 Javascript
vue-cli3项目配置eslint代码规范的完整步骤
2020/09/10 Javascript
[04:44]DOTA2西游记战队视频彩蛋流出 师徒开黑巧遇林书豪
2016/08/03 DOTA
python读写文件操作示例程序
2013/12/02 Python
在pandas中一次性删除dataframe的多个列方法
2018/04/10 Python
Python实现的朴素贝叶斯算法经典示例【测试可用】
2018/06/13 Python
python二维列表一维列表的互相转换实例
2018/07/02 Python
编写多线程Python服务器 最适合基础
2018/09/14 Python
python实现画五角星和螺旋线的示例
2019/01/20 Python
Pytoch之torchvision.transforms图像变换实例
2019/12/30 Python
Python3.9.1中使用match方法详解
2021/02/08 Python
HTML5拖拽文件上传的示例代码
2021/03/04 HTML / CSS
英国最大的LED专业零售商:Led Hut
2018/03/16 全球购物
加拿大最大的体育用品、鞋类和服装零售商:Sport Chek
2018/11/29 全球购物
函授本科毕业生自我鉴定
2013/10/16 职场文书
先进事迹演讲稿
2014/09/01 职场文书
委托证明模板
2014/09/16 职场文书
综合办公室岗位职责
2015/04/11 职场文书
就业意向书范本
2015/05/11 职场文书
演讲开场白台词大全
2015/05/29 职场文书
Lombok的详细使用及优缺点总结
2021/07/15 Java/Android