python标准模块(time、datetime及hashlib模块)
一、time,datetime模块
时间相关的操作
import time
time.sleep(5) # ==> 停顿多少秒
print(time.time()) # ==> 返回时间戳,1970年1月1日之后的秒,seconds
print(time.ctime()) # ==> 返回字符串形式当前时区的当前时间
print(time.ctime(time.time()-86400)) # ==>时间换算,当前系统时间提前一天
print(time.gmtime(time.time())) # ==> 将当前UTC时区(0时区) 时间以struct_time格式显示,
obj = time.gmtime(time.time())
print(obj.tm_year) # ==> 可将struct_time 格式时间 分别获取其tm_year ,tm_mon等值
print(time.gmtime()) # ==> 如果不填seconds参数,默认就是time.time()
print(time.localtime()) # ==> 将当前时区时间以struct_time格式显示,如果传参数,都是以second为单位
print(time.mktime(time.localtime())) # ==> 与time.localtime()功能相反,是将struct_time格式转为时间戳格式(seconds)
print(time.strftime('%Y-%m-%d',time.localtime())) # ==> 将struct_time格式化成指定字符串形式,传入参数①为格式,②为时间对象,struct——time格式
print(time.strptime('2016-7-3 22:52','%Y-%m-%d %H:%M')) # ==> 将字符串格式转换成struct_time格式 import datetime
print(datetime.date.today()) # ==> 当前日期
print(datetime.date.fromtimestamp(86400)) # ==> 将时间戳转换成日期格式
current = datetime.datetime.now() # 当前时间
print(current) # ==> 打印当前时间 字符串格式
print(current.timetuple()) # ==> 返回struct_time格式
print(current.replace(year=1988,month=11,day=27,hour=22)) # ==>返回当前时间,但是指定的值会被替换
print(current.replace(1988,5,11)) print(datetime.datetime.strptime('2016/07/03','%Y/%m/%d')) # ==> 将字符串转换为日期格式
# 时间加减
print(datetime.datetime.now() + datetime.timedelta(days=10))
# 可用 '-'号, days= -10 也ok
# 参数 days seconds weeks minutes hours microseconds milliseconds
二、hashlib模块
用于加密相关的操作,代替了md5模块和sha模块,主要提供md5(),sha1(),sha224(),sha256(),sha384(),sha512()算法
主要方法有.update(arg); digest(); hexdigest(); copy()
import hashlib obj = hashlib.md5()
obj.update(bytes('What a fucking day',encoding='utf-8')) # ==> obj.update(b'What a fucking day')
print(obj.digest())
print(obj.hexdigest()) # 十六进制形式显示 # 结果:
b'2\x1d\x86\xc6\x17\xb5\xa2]\x81\x02EC\xc4\xf5\xb2T'
321d86c617b5a25d81024543c4f5b254
# 以上算法虽然非常厉害,但时候存在缺陷,即:通过撞库可以反解。所以,有必要对加密算法中添加自定义key再来做加密。
import hashlib
m = hashlib.md5(b'cbcllsn478')
m.update(b'What a fucking day')
print(m.digest())
print(m.hexdigest())
#结果
b'[\xd5E\xdf\xb8NCS\x9f9y\x13\xf9\xce\x17\xfb'
5bd545dfb84e43539f397913f9ce17fb
python标准模块(time、datetime及hashlib模块)的更多相关文章
- python学习笔记(六)time、datetime、hashlib模块
一.hashlib模块 python中的hashlib模块用来进行hash或者md5加密,而且这种加密是不可逆的,所以这种算法又被称为摘要算法.在python3的版本里,代替了md5和sha模块,主要 ...
- python标准库:datetime模块
原文地址:http://www.bugingcode.com/blog/python_datetime.html datatime 模块题共用一些处理日期,时间和时间间隔的函数.这个模块使用面向对象的 ...
- Python标准库:datetime 时间和日期模块 —— 时间的获取和操作详解
datetime 时间和日期模块 datetime 模块提供了以简单和复杂的方式操作日期和时间的类.虽然支持日期和时间算法,但实现的重点是有效的成员提取以进行输出格式化和操作.该模块还支持可感知时区的 ...
- Python学习日记(二十八) hashlib模块、configparse模块、logging模块
hashlib模块 主要提供字符加密算法功能,如md5.sha1.sha224.sha512.sha384等,这里的加密算法称为摘要算法.什么是摘要算法?它又称为哈希算法.散列算法,它通过一个函数把任 ...
- Day 16 : Python 时间模块[time,]datetime[]及第三方模块的下载与安装
在进行python程序开发时,除了可以使用python内置的标准模块外,还右许多第三方模块使用,可以在python官网找到. 在使用第三方模块时,需要下载并安装此模块,然后就可以使用标准模块一样导入并 ...
- python模块 os&sys&subprocess&hashlib模块
os模块 # os模块可根据带不带path分为两类 # 不带path print(os.getcwd()) # 得到当前工作目录 print(os.name) # 指定你正在使用的操作系统,windo ...
- python 全栈开发,Day25(复习,序列化模块json,pickle,shelve,hashlib模块)
一.复习 反射 必须会 必须能看懂 必须知道在哪儿用 hasattr getattr setattr delattr内置方法 必须能看懂 能用尽量用__len__ len(obj)的结果依赖于obj. ...
- Python基础之模块:6、hashlib模块 subprocess模块 logging模块
目录 一.hashlib模块 1.简介 2.基本操作与用法 二.subprocess模块 1.简介 2.基本操作与用法 三.logging模块 1.简介 2.基本操作与用法 一.hashlib模块 1 ...
- python标准库介绍——2 os.path模块详解
== os.path 模块 == ``os.path`` 模块包含了各种处理长文件名(路径名)的函数. 先导入 (import) ``os`` 模块, 然后就可以以 ``os.path`` 访问该模块 ...
随机推荐
- Java并发包源码分析
并发是一种能并行运行多个程序或并行运行一个程序中多个部分的能力.如果程序中一个耗时的任务能以异步或并行的方式运行,那么整个程序的吞吐量和可交互性将大大改善.现代的PC都有多个CPU或一个CPU中有多个 ...
- linux的学习记录随笔
为什么学习linux 因为操作系统是一种介质,你要接触其中的东西,首先必须要有介质,而linux在服务器端是老大哥的地位,所以呢,学习linux吧. 学习的方式 可以看视频 imooc.百度传课.网易 ...
- [AR]ImageTarget(图像识别)
ImageTarget 前言 ImageTarget 顾名思义,就是图像识别,本文记录下作者最近学习vuforia中的imageTarget笔记与心得. vuforia guide:https://l ...
- Docker--在Docker中运行应用
Docker--在Docker中运行应用 一个交互式的容器 既然在Docker提供的是一个容器,底层支撑着一个基本的操作系统环境,那我们就可以通过Docker进入到容器内部与系统进行交互. 据我理解: ...
- 深入理解JSONP原理——前端面试
JSON和JSONP虽然只有一个字之差,但是它们俩是八竿子打不着的:JSON是一种数据交换格式,JSONP是非正式的跨域数据交换协议. 为什么说JSONP是非正式的传输协议呢?因为它就是利用了< ...
- python网络编程-socket编程
一.服务端和客户端 BS架构 (腾讯通软件:server+client) CS架构 (web网站) C/S架构与socket的关系: 我们学习socket就是为了完成C/S架构的开发 二.OSI七层 ...
- array
1.array() //创建数组 2.array_change_key_case($arr,CASE_UPPER); //将键名全部大写,不加参数全变小写--没啥用 3.array_chunk($ar ...
- LVS原理详解
一.集群简介 什么是集群 计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系统中的单个计算 ...
- ECharts学习(4)--仪表盘
1. ECharts中的仪表盘,要使用这个图表时把series中的type属性修改成'gauge',然后在detail中设置仪表盘详情,用于显示数据.最常用的是formatter(格式化函数或者字符串 ...
- [转]ExtJs基础--Html DOM、Ext Element及Component三者之间的区别
要学习及应用好Ext框架,必须需要理解Html DOM.Ext Element及Component三者之间的区别. 每一个HTML页面都有一个层次分明的DOM树模型,浏览器中的所有内容都有相应的DOM ...