1,在Python中,与时间处理有关的模块就包括:time,datetime以及calendar。

2,在Python中,通常有这几种方式来表示时间:1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素

a,想时间戳和格式化好的时间互相转换的话,都要先转成时间元组,然后才能转

b,UTC(Coordinated Universal Time,世界协调时)亦即格林威治天文时间,世界标准时间。在中国为UTC+8。DST(Daylight Saving Time)即夏令时

c,时间戳(timestamp)的方式:通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。返回时间戳方式的函数主要有time(),clock()等

d,元组(struct_time)方式:struct_time元组共有9个元素,返回struct_time的函数主要有gmtime(),localtime(),strptime()。下面列出这种方式元组中的几个元素

索引(Index) 属性(Attribute) 值(Values)
0 tm_year(年) 比如2011
1 tm_mon(月) 1 - 12
2 tm_mday(日) 1 - 31
3 tm_hour(时) 0 - 23
4 tm_min(分) 0 - 59
5 tm_sec(秒) 0 - 61
6 tm_wday(weekday) 0 - 6(0表示周日)
7 tm_yday(一年中的第几天) 1 - 366
8 tm_isdst(是否是夏令时) 默认为-1

一、time

import time
print(time.sleep(2))#线程推迟指定的时间运行,单位是s
print(time.localtime()) #默认取当前时区的时间元组,如果传入了一个时间戳,那么就把这个时间戳转换成时间元组。
print(time.gmtime())#默认取标准时区的时间元组,如果传入了一个时间戳,那么就把这个时间戳转换成时间元组。
print(time.timezone) #和标准时间相差的时间,单位是s
print(time.localtime(1516005840))
print(time.gmtime(1516005840)) #标准时区。
print(int(time.time())) #当前时间戳,取整
print(time.time()) #当前时间戳,浮点型
print(time.mktime(time.localtime())) #将一个时间元组(struct_time)转化为时间戳。
print(time.asctime()) #将时间元组转换成格式化时间:'Sun Jun 20 23:21:05 1993'。如果没有参数,将会将time.localtime()作为参数传入。不可以指定格式输出,strftime()可以
print(time.ctime()) #将时间戳转换成格式化时间:'Sun Jun 20 23:21:05 1993'。如果参数未给或者为None的时候,将会默认time.time()为参数
cur_time = time.strftime('%Y-%m-%d %H:%M:%S') #把一个代表时间的元组转化为格式化的时间字符串。如果t未指定,将传入time.localtime()
print(cur_time)
cur_time= time.localtime(1516005840) #默认取当前时区的时间元组,如果传入了一个时间戳,那么就把这个时间戳转换成时间元组。
res = time.strftime('%Y-%m-%d %H:%M:%S',cur_time)
print(res)
t=time.strptime('2017-11-14','%Y-%m-%d') #把一个格式化时间字符串转化为时间元组。实际上它和strftime()是逆操作。
#time.strptime(string, format) string 与 format 格式要对应
res = time.mktime(t) #将一个时间元组(struct_time)转化为时间戳。
print(t) 常用函数:
def timestampToStr(time_strmp,format='%Y%m%d%H%M%S'):#将时间戳转换为格式化好的时间
t_stamp = time.localtime(time_strmp) #将时间戳转换为时间元组
time_st = time.strftime(format,t_stamp) #将时间元组转换为格式化时间
return time_st
def strToTimestamp(time_st,format='%Y%m%d%H%M%S'):#将格式化好的时间转换为时间戳
t_stamp = time.strptime(time_st,format) #将格式化时间转化为时间元组
time_str = time.mktime(t_stamp) #将时间元组转换为时间戳
return time_str
在Python中共有三种表达方式:1)timestamp 2)tuple或者struct_time 3)格式化字符串。
它们之间的转化如图所示:

二、datetime 模块

datetime模块定义了5个类,分别是

1.datetime.date:表示日期的类

2.datetime.datetime:表示日期时间的类  from datetime import datetime导入的才是datetime这个类,如果仅导入import datetime,则必须引用全名datetime.datetime

3.datetime.time:表示时间的类

4.datetime.timedelta:表示时间间隔,即两个时间点的间隔

5.datetime.tzinfo:时区的相关信息

获取当前时期和时间

import datetime  #如果仅导入import datetime,则必须引用全名datetime.datetime
print(datetime.datetime.now())#当前时间格式化输出 from _datetime import datetime
print(datetime.now()) #获取当前时间格式化输出

获取指定日期和时间

dt = datetime(2018,1,19,15,13)  # 用指定日期时间创建datetime
print(dt)

datetime 转换为时间戳(timestamp)

from  datetime import datetime
dt = datetime(2018,1,19,15,13) # 用指定日期时间创建datetime
print(dt)
print(dt.timestamp()) #把datetime 转换为timestamp
输出结果:
2018-01-19 15:13:00 1516345980.0 注意Python的timestamp是一个浮点数。如果有小数位,小数位表示毫秒数
时间戳(timestamp)转换为datetime
from _datetime import datetime
dt = 1516345980.0
print(datetime.fromtimestamp(dt)) #将时间戳转换为datetime
输出结果:2018-01-19 15:13:00
格式化时间转换为datetime cday= datetime.strptime('2018-1-19','%Y-%m-%d') #将格式话时间转换为datetime
print(cday)
输出结果:2018-01-19 00:00:00
datetime 转换为格式化时间
now = datetime.now()
print(now.strftime('%a,%b %d %H:%M '))
输出结果:Fri,Jan 19 15:27
datetime 加减
print(datetime.now())
print(datetime.now() + timedelta(3)) # 3天后的时间
print(datetime.now() + timedelta(-3)) # 3天前的时间
 
 

Python 常用内建模块(time ,datetime)的更多相关文章

  1. Python常用内建模块

    Python常用内建模块 datetime 处理日期和时间的标准库. 注意到datetime是模块,datetime模块还包含一个datetime类,通过from datetime import da ...

  2. python常用内建模块 collections,bs64,struct,hashlib,itertools,contextlib,xml

    #  2  collections 是Python内建的一个集合模块,提供了许多有用的集合类. # 2.1 namedtuple #tuple可以表示不变集合,例如,一个点的二维坐标就可以表示成: p ...

  3. Python常用内建模块和第三方库

    目录 内建模块 1  datetime模块(处理日期和时间的标准库) datetime与timestamp转换 str与datetime转换 datetime时间加减,使用timedelta这个类 转 ...

  4. python常用内建模块——datetime

    datetime是python处理日期和时间的标准库. 获取当前日期和时间 >>>from datetime import datetime >>>now = da ...

  5. collections(python常用内建模块)

    文章来源:https://www.liaoxuefeng.com/wiki/897692888725344/973805065315456 collections collections是Python ...

  6. python常用内建模块--datetime

    datetime模块中的datetime类: 获取当前时间:datetime.now() 当前操作系统时区时间,date.utctime(UTC时间) 转换成时间戳:timestamp() 和具体时区 ...

  7. Python 常用内建模块(os, sys,random)

    一.os 模块 1,操作系统与环境变量 import osprint(os.name) #操作系统类型,如果是posix 说明系统是linux unix 或 mac os x :如果是nt 就是win ...

  8. python 常用内建模块(3) base64

    Base64是一种用64个字符来表示任意二进制数据的方法. 用记事本打开exe.jpg.pdf这些文件时,我们都会看到一大堆乱码,因为二进制文件包含很多无法显示和打印的字符,所以,如果要让记事本这样的 ...

  9. python常用内建模块--base64

    Base64是一种任意二进制到文本字符串的编码方法,常用于在URL.Cookie.网页中传输少量二进制数据. import base64 a = 'abcdef/+'b= base64.b64enco ...

随机推荐

  1. [转]SSIS中的脚本—脚本任务

    本文转自:http://www.cnblogs.com/tylerdonet/archive/2011/09/16/2179123.html 脚本任务主要用来控制数据流,当现有的控制流 任务不能满足复 ...

  2. KafkaConsumer对于事务消息的处理

    Kafka添加了事务机制以后,consumer端有个需要解决的问题就是怎么样从收到的消息中滤掉aborted的消息.Kafka通过broker和consumer端的协作,利用一系列优化手段极大地降低了 ...

  3. 【Other】ASCII Text Art

    http://fsymbols.com/cn/wenzi-yishu/ http://fsymbols.com/text-art/#all_cats http://chris.com/ascii/in ...

  4. LINUX 下编译不通过解答

    在linux下编译android源码或者webkit等程序源码时,不论在源码下加什么错误,编译器都默认正确,检索不到错误,此时,可能是之前编译的生成文件默认编译器不再检索编译新修改过的文件,只是发现修 ...

  5. 能显示git分支的终端提示配置

    之前都是跟随潮流,安装zsh然后oh-my-zsh,选一个看起来顺眼的主题,一通瞎配置,很酷炫. 可是即使只有一个git插件,oh-my-zsh每次启动的时候都很慢,起码有好几秒,而且有时候zsh还会 ...

  6. 跟着辛星一起用CSS美化商品列表

    说实话,近期对CSS的关注还是蛮多的,不为别的,仅仅是由于自己喜欢,感觉写CSS就像画家绘画一样,使用热情和激情去探索,没有了那份功利心,反而感觉是一种享受.特别有成就感,好啦,今天就分享一期自己用C ...

  7. weblogic 异常 com.rsa.jsafe.JSAFE_PaddingException: Could not perform unpadding: invalid pad byte.次异常怎么解决

    问题 更改控制台密码后,服务重启失败,无法启动,报错如下: <-- 下午03时10分49秒 CST> <Info> <WebLogicServer> <BEA ...

  8. 屏幕录像大师如何把LXE文件转换为EXE文件

    EXE 和 LXE 实际上是同一种格式,文件大小完全相同,可以快速相互转换.区别是EXE复制到其它电脑上可以直接播放,LXE需要播放器播放,我们提供LXE播放器,而且是完全免费的.EXE的好处是复制到 ...

  9. 运用Unity实现AOP拦截器[结合异常记录实例]

      本篇文章将通过Unity实现Aop异常记录功能:有关Unity依赖注入可以看前两篇文章: 1:运用Unity实现依赖注入[结合简单三层实例] 2:运用Unity实现依赖注入[有参构造注入] 另早期 ...

  10. react-redux 中 connect 的常用写法

    1.方式一 export default connect(({ monitorRedux })=>{ return { data: monitorRedux.data } })(Monitor) ...