•  

【20201016】使用Python处理日期和时间

发表于 2020-10-15,阅读 9

介绍

介绍

福哥今天给大家系统的讲一讲Python中对日期和时间的处理的技巧,在python中处理日期和时间需要用到time和datetime软件包,这两个软件包是内建的不需要单独安装,可以直接import进来使用。

教程

当前时间

获取当前时间

import time

print ("当前时间: " + time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))

a1a78e90445bcf6c.jpg

时间格式

这里福哥给出time.strftime的格式说明

  • %y,两位数的年份

  • %Y,四位数的年份

  • %m,两位数月份

  • %d,月内中的一天

  • %H,24小时制小时数

  • %I,12小时制小时数(01-12)

  • %M,两位数分钟数

  • %S,两位数秒

  • %a,本地简化星期名称

  • %A,本地完整星期名称

  • %b,本地简化的月份名称

  • %B,本地完整的月份名称

  • %c,本地相应的日期表示和时间表示

  • %j,三位数年内的一天

  • %p,自动判断显示AM或PM

  • %U,两位数一年中的星期数,星期天为星期的开始

  • %w,一位数星期,星期天为星期的开始

  • %W,两位数一年中的星期数,星期一为星期的开始

  • %x,本地相应的日期表示

  • %X,本地相应的时间表示

  • %Z,当前时区的名称

  • %%,“%”

时间戳

计算时间戳使用time.mktime实现,福哥给出两个例子

import time
import datetime

print (time.mktime(time.localtime()))
print (time.mktime(datetime.datetime.now().timetuple()))

c9b01a53fdf56352.jpg

时间偏移

可以通过datetime.timedelta计算时间的偏移量,通过这个可以实现在当前时间基础上进行“加”或“减”操作,实现时间偏移处理

月份偏移,因为每年十二个月的天数都不尽相同,所以并不支持对于monthes的操作

年份偏移,因为年份会有闰年的情况,所以并不支持对于years的操作

昨天的现在

将时间向前(过去)偏移一天

import datetime

yesterday = datetime.datetime.now() + datetime.timedelta(days=-1)
print ("昨天的现在: " + yesterday.strftime("%Y-%m-%d %H:%M:%S"))

6b535653dc7fe215.jpg

8小时之后

将时间向后(未来)偏移8小时

import datetime

yesterday = datetime.datetime.now() + datetime.timedelta(hours=8)
print ("8小时之后: " + yesterday.strftime("%Y-%m-%d %H:%M:%S"))

bbfdc8a59d4d42a0.jpg

时间解析

可以针对一个字符串进行解析并生成time对象,而后就可以使用strftime格式化,或者进行“加”或“减”处理

举几个例子

import time
import datetime

print (time.strptime("2020-10-01 12:59:59", "%Y-%m-%d %H:%M:%S"))
print (time.strptime("2020-10-01", "%Y-%m-%d"))
print (time.strptime("12:59:59", "%H:%M:%S"))

fa3250996ab97951.jpg

总结

学会日期时间的处理之后,在编程的时候就可以轻松自如地打印时间、修改时间、加工时间了。

鬼谷子叔叔
  • 日志:212
  • 回复:13

进入ta的主页