无序模块
什么是无序模块,将字符串转化为十六进制的字符串类型,主要运用在网络编程中。
1,json模块
1,用于网络传输,跨语言,可用的类型有 int str 列表--》元祖会变为列表 字典--》双引号表示
2,缺点:支持的数据类型有限
1.json.dumps()
将字符创转化为bytes类型,用来传输
    2.json.loads()
读取bytes类型
dic = {'剑圣':'我的剑就是你的剑','赵信':'陷阵之志,有死无生','皇子':'犯我德邦者,虽远必诛'}
lol = json.dumps(dic,ensure_ascii=False) #在网络编程中的dumps将字符串转化为十六进制的字符串类型
print(lol)
ret = json.loads(lol) #用来解读十六进制
print(ret)

        3.json.dump()
文件的写入 但是当文件写入数据较多时 需要用dumps
4.json.load()
文件内容读取
f = open('233','a',encoding='utf-8')
json.dump(dic,f)#文件写入
f.close() f1 = open('233','r',encoding='utf-8')
json.loads(f1)#文件读取
f.close()

2.pickle模块
1.在python平台之间使用,使用便利
1,pickle.dumps
2.pickle.loads
3.pockle.dump
4.pockle.load
     
dic = {'剑圣':'我的剑就是你的剑','赵信':'陷阵之志,有死无生','皇子':'犯我德邦者,虽远必诛'}
dic1 = {'剑圣':'我的剑就是你的剑','赵信':'陷阵之志,有死无生','皇子':'犯我德邦者,虽远必诛'}
dic2 = {'剑圣':'我的剑就是你的剑','赵信':'陷阵之志,有死无生','皇子':'犯我德邦者,虽远必诛'}
dic3 = {'剑圣':'我的剑就是你的剑','赵信':'陷阵之志,有死无生','皇子':'犯我德邦者,虽远必诛'}
k = pickle.dumps(dic)
print(k)
l = pickle.loads(k)
print(l) f = open('233','ab')
ret = pickle.dump(dic,f)
f.close() f1 =open('233','rb')
print(pickle.load(f1))
f1.close()
f=open('233','wb')
pickle.dump(dic,f)
pickle.dump(dic1,f)
pickle.dump(dic2,f)
pickle.dump(dic3,f)
f.close()
f1 =open('233','rb')
while True:
try:
print(pickle.load(f1))
except EOFError:
break
f.close() class A:
def __init__(self,name,age):
self.name = name
self.age = age a = A('alex',45)
k=pickle.dumps(a) #读取所有属性, 将a对象的属性序列化
l=pickle.loads(k)
print(l.__dict__)

3.shelve模块
专有化的模块,只针对文件的读取调用。
f['']模式 4.hashlib模块
两种运用
1,在文件的校验上面,传输者和接收者的文件是否一致
2,密码的加密 分多种加密方式:
1.MD5 2.sha加密方式
1,文件的一致性校验:
  在文件上传网络之后,为了校验上传的文件和之后的别人接收的文件是否一致,利用hashlib中md5的加密方式,验证两边问价加密后是否密码一致,即使文件有一个空格的不同都会使得加密后的md5密码不一样。
md5obj = hashlib.md5()
with open('file1','rb')as f:
    countent = f.read() #文件加密
    md5obj.update(countent)
print(md5obj.hexdigest()) 2,密文验证的时候加密
MD5加密方式, 通用的加密方式
sha文件加密方式,
password = input('>>>>')
k = hashlib.md5()
k.update(password.encode('utf-8')) m = hashlib.md5()
m.update('233'.encode('utf-8'))
if k.hexdigest() == m.hexdigest():
print('666')
else:
print('2333')
     

python 无序模块,hashlib模块的更多相关文章

  1. Python第十一天 异常处理 glob模块和shlex模块 打开外部程序和subprocess模块 subprocess类 Pipe管道 operator模块 sorted函数 os模块 hashlib模块 platform模块 csv模块

    Python第十一天    异常处理  glob模块和shlex模块    打开外部程序和subprocess模块  subprocess类  Pipe管道  operator模块   sorted函 ...

  2. Python进阶(九)----json模块, pickle模块, os模块,sys模块,hashlib模块

    Python进阶----json模块, pickle模块, os模块,sys模块,hashlib模块 一丶序列化模块 什么是序列化: ​ 将一种数据结构,转换成一个特殊的序列(特殊字符串,用于网络传输 ...

  3. python模块: hashlib模块, configparse模块, logging模块,collections模块

    一. hashlib模块 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用 ...

  4. python模块——hashlib模块(简单文件摘要算法实现)

    #!/usr/bin/env python # -*- coding:utf-8 -*- __author__ = "loki" # Usage: hashlib模块 import ...

  5. Python正则表达式与hashlib模块

    菜鸟学python第十六天 1.re模块(正则表达式) 什么是正则表达式 正则表达式是一个由特殊字符组成的序列,他能帮助对字符串的某种对应模式进行查找. 在python中,re 模块使其拥有全部的正则 ...

  6. Python进阶-XVV hashlib模块、configparse模块、logging模块

    1.配置相关的configparse模块 配置文件如何组织?python中常见的是将配置文件写成py,然后引入该模块即可.优点是方便访问. 但是也有用类似windows中的ini文件的配置文件,了解即 ...

  7. python day 8: re模块补充,导入模块,hashlib模块,字符串格式化,模块知识拾遗,requests模块初识

    目录 python day 8 1. re模块补充 2. import模块导入 3. os模块 4. hashlib模块 5. 字符串格式:百分号法与format方法 6. 模块知识拾遗 7. req ...

  8. python笔记7 logging模块 hashlib模块 异常处理 datetime模块 shutil模块 xml模块(了解)

    logging模块 日志就是记录一些信息,方便查询或者辅助开发 记录文件,显示屏幕 低配日志, 只能写入文件或者屏幕输出 屏幕输出 import logging logging.debug('调试模式 ...

  9. python之路----hashlib模块

    在平时生活中,有很多情况下,你在不知不觉中,就用到了hashlib模块,比如:注册和登录认证注册和登录认真过程,就是把注册用的账户密码进行:加密 --> 解密 的过程,在加密.解密过程中,用的了 ...

  10. python学习-59 hashlib模块

    hashlib模块 用于加密相关的操作,3.x里代替了md5模块和sha模块 加密功能 import hashlib obj = hashlib.md5() # 如果在md5里加上自己设置的参数,别的 ...

随机推荐

  1. ()IT 职场经验)一位10年Java工作经验的架构师的经验分享,感觉很受用。

    阿里巴巴技术大牛黄勇的经验分享,感觉很受用. 关于IT 职场经验 1. 把技术当成工具 技术这东西,其实一点都不神秘,它只不过是一个工具,用这个工具可以帮助我们解决实际问题,就这么简单. 我们每天在面 ...

  2. Mysql数据库导出sql脚本

    1. 运行环境Centos mysqldump -h localhost -u root -p etv > ./etv.sql etv 是要导出的数据库名 > 设置导出的路径和文件名

  3. Spring Boot 快速入门(IDEA)

    从字面理解,Boot是引导的意思,因此SpringBoot帮助开发者快速搭建Spring框架:SpringBoot帮助开发者快速启动一个Web容器:SpringBoot继承了原有Spring框架的优秀 ...

  4. Dispatcher initialization failedUnable to load configuration 解决办法

    检查<package name="action" extends="struts-default"></package>中是否有exte ...

  5. linux service start|stop|restart

    用了这么些日子的linux/unix系统,也和别人一起合作开发了不少程序,发现高手都喜欢在命令行上操作,而且控制程序的运行偏好于使用脚本,加上参数如:start.restart.stop等. 后来自己 ...

  6. Mac 终端 Termial 高亮配置(PS1变量配置)

    操作环境: 系统:Mac 10.12 编辑器:vim 一.无脑配置: 1. 打开中端输入: vi ~/.bash_profile 2. 打开并编辑 .bash_profile 文件: 按键盘“i”,进 ...

  7. UnsupportedOperationException

    java不支持该功能,多见于, Arrays.asList() ,然后使用remove和add方法.     因为asarraylist的集合是一个转化来的集合,它的大小是固定的.不能进行长度修改. ...

  8. ubuntu14.04搭建Hadoop2.9.0集群(分布式)环境

    本文进行操作的虚拟机是在伪分布式配置的基础上进行的,具体配置本文不再赘述,请参考本人博文:ubuntu14.04搭建Hadoop2.9.0伪分布式环境 本文主要参考 给力星的博文——Hadoop集群安 ...

  9. 【Demo】CSS3 3D转换

    3D转换transform rotateX() 方法 rotateX()方法,围绕其在一个给定度数X轴旋转的元素. div { transform: rotateX(120deg); -webkit- ...

  10. 如何发布二次开发后的openfire源码到linux服务器中

    这篇文章是在你已经down了openfire的源码,然后在本地跑起来了,再然后开发了一个自己的插件,想要发布到服务器上.ok这时候出现了一个问题,怎么才能发布到服务器上呢?别急往下看: 1.运行ant ...