python中时间、日期、时间戳的转换的实现方法

yipeiwu_com5年前Python基础

1.简介

在编写代码时,往往涉及时间、日期、时间戳的相互转换。

2.示例

# 引入模块
import time, datetime

2.1 str类型的日期转换为时间戳

# 字符类型的时间
tss1 = '2013-10-10 23:40:00'
# 转为时间数组
timeArray = time.strptime(tss1, "%Y-%m-%d %H:%M:%S")
print timeArray   
# timeArray可以调用tm_year等
print timeArray.tm_year  # 2013
# 转为时间戳
timeStamp = int(time.mktime(timeArray))
print timeStamp # 1381419600


# 结果如下
time.struct_time(tm_year=2013, tm_mon=10, tm_mday=10, tm_hour=23, tm_min=40, tm_sec=0, tm_wday=3, tm_yday=283, tm_isdst=-1)
2013
1381419600

2.2 更改str类型日期的显示格式

tss2 = "2013-10-10 23:40:00"
# 转为数组
timeArray = time.strptime(tss2, "%Y-%m-%d %H:%M:%S")
# 转为其它显示格式
otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
print otherStyleTime # 2013/10/10 23:40:00

tss3 = "2013/10/10 23:40:00"
timeArray = time.strptime(tss3, "%Y/%m/%d %H:%M:%S")
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
print otherStyleTime # 2013-10-10 23:40:00

2.3 时间戳转换为指定格式的日期

# 使用time
timeStamp = 1381419600
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", timeArray)
print otherStyleTime  # 2013--10--10 23:40:00
# 使用datetime
timeStamp = 1381419600
dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
otherStyleTime = dateArray.strftime("%Y--%m--%d %H:%M:%S")
print otherStyleTime  # 2013--10--10 15:40:00

2.4 获取当前时间并且用指定格式显示

# time获取当前时间戳
now = int(time.time())   # 1533952277
timeArray = time.localtime(now)
print timeArray
otherStyleTime = time.strftime("%Y--%m--%d %H:%M:%S", timeArray)
print otherStyleTime  

# 结果如下
time.struct_time(tm_year=2018, tm_mon=8, tm_mday=11, tm_hour=9, tm_min=51, tm_sec=17, tm_wday=5, tm_yday=223, tm_isdst=0)
2018--08--11 09:51:17


# datetime获取当前时间,数组格式
now = datetime.datetime.now()
print now
otherStyleTime = now.strftime("%Y--%m--%d %H:%M:%S")
print otherStyleTime 

# 结果如下:
2018-08-11 09:51:17.362986
2018--08--11 09:51:17

通过datetime.datetime.strptime(date_string, format)将原字符串进行时间格式匹配,并赋值给time_format,然后time_format调用strftime(format)函数,输出自己想要的格式

python中时间日期格式化符号:

  %y 两位数的年份表示(00-99)

  %Y 四位数的年份表示(0000-9999)

  %m 月份(01-12)

  %d 月内中的一天(0-31)

  %H 24小时制小时数(0-23)

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

  %M 分钟数(00-59)

  %S 秒(00-59)

  %a 本地简化星期名称

  %A 本地完整星期名称

  %b 本地简化的月份名称

  %B 本地完整的月份名称

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

  %j 年内的一天(001-366)

  %p 本地A.M.或P.M.的等价符

  %U 一年中的星期数(00-53)星期天为星期的开始

  %w 星期(0-6),星期天为星期的开始

  %W 一年中的星期数(00-53)星期一为星期的开始

  %x 本地相应的日期表示

  %X 本地相应的时间表示

  %Z 当前时区的名称

  %% %号本身 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

深入了解Python中pop和remove的使用方法

Python关于删除list中的某个元素,一般有两种方法,pop()和remove()。 remove() 函数用于移除列表中某个值的第一个匹配项。 remove()方法语法: list...

Python函数参数操作详解

本文实例讲述了Python函数参数操作。分享给大家供大家参考,具体如下: 简述 在 Python 中,函数的定义非常简单,满足对应的语法格式要求即可。对于调用者来说,只需关注如何传递正确...

linux下python使用sendmail发送邮件

本文实例为大家分享了python使用sendmail发送邮件的具体代码,供大家参考,具体内容如下 参考链接:How do I send mail from a Python script...

python写的一个squid访问日志分析的小程序

python写的一个squid访问日志分析的小程序

这两周组里面几位想学习python,于是我们就创建了一个这样的环境和氛围来给大家学习。 昨天在群里,贴了一个需求,就是统计squid访问日志中ip 访问数和url的访问数并排序,不少同学...

寻找网站后台地址的python脚本

#!/usr/bin/python # This was written for educational purpose only. Use it at your own risk...