python日期与时间戳的各种转换示例

官方文档的示例中没有我们习惯的日期格式,查了很多博客转换日期和时间戳也都是大概的能得到结果的方式,常将 datetime 和 time 两个模块混用,个人觉得时间格式化不应该这么麻烦,还得用两个模块来支持?故而翻遍了源码,总结以下常用的几种日期和时间戳的转换方式。

以下主要有三个元素(时间字符串,格式,Unix时间戳),可将时间字符串转为另一种时间格式,或将时间字符串转为时间戳,或将时间戳转为时间字符串。

datetime 和 time 两个模块,任意一个都能转换完成。

以下两个模块均列出示例:

# coding: utf-8
from datetime import datetime
import time

s = '2019-06-07 16:30:10'
f = '%Y-%m-%d %H:%M:%S'
s2 = 'Fri Jun 7 16:30:10 2019'
f2 = '%c'

// 时间字符串转时间戳, 时间字串 s和format 对应
// int(t) 转为整型
t = datetime.strptime(s, f).timestamp() # 1559856210.0
t2 = time.mktime(time.strptime(s, f)) # 1559856210.0
t3 = time.mktime(time.strptime(s2, f2)) # 1559856210.0
t4 = datetime.strptime(s2, f2).timestamp() # 1559856210.0
t5 = datetime.strptime('2019-06-07', '%Y-%m-%d').timestamp() # 1559836800.0
t6 = datetime.strptime('06/07/19', '%x').timestamp() # 1559836800.0 (06/07/2019, '%m/%d/%Y')
print(t, t2, t3, t4, t5, t6, "\n")

ut = 1559896210
# 时间戳转为时间字符串
d = datetime.fromtimestamp(ut) # 2019-06-07 16:30:10
d2 = time.strftime(f, time.localtime(ut)) # 2019-06-07 16:30:10
d3 = time.ctime(ut) # Fri Jun 7 16:30:10 2019
d4 = datetime.fromtimestamp(ut).ctime() # Fri Jun 7 16:30:10 2019
d5 = time.strftime('%Y-%m-%d', time.localtime(ut)) # 2019-06-07 (05:23:30, %H:%M:%S)
d6 = datetime.fromtimestamp(ut).date() # 2019-06-07
d7 = datetime.fromtimestamp(ut).time() # 16:30:10
d8 = time.strftime('%x', time.localtime(ut)) # 06/07/19
d9 = time.strftime('%X', time.localtime(ut)) # 16:30:10
dd = datetime.fromtimestamp(ut).strftime('%x') # 06/07/19 [(16:30:10, %X), (Fri Jun 7 16:30:10 2019, %c)]
print(d, d2, d3, d4, d5, d6, d7, d8, d9, dd, "\n")

# 格式转换
# 将 2019-06-07 16:30:10 转为 Fri Jun 7 16:30:10 2019
# (16:30:10, %X)
transf = datetime.strptime(s, f).strftime(f2)
# 将 Fri Jun 7 16:30:10 2019 转为 2019-06-07
# (2019-06-07 16:30:10, %Y-%m-%d %H:%M:%S)
transf2 = datetime.strptime(s2, f2).strftime('%Y-%m-%d')
# 将 2019-06-07 16:30:10 转为 Fri Jun 7 16:30:10 2019
# (2019-06-07 16:30:10, %Y-%m-%d %H:%M:%S)
transf3 = time.strftime('%c', time.strptime(s, f))
# 将 Fri Jun 7 16:30:10 2019 转为 2019-06-07 16:30:10
transf4 = time.strftime(f, time.strptime(s2, f2))
print(transf, transf2, transf3, transf4)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Python3日期与时间戳转换的几种方法详解

    日期和时间的相互转换可以利用Python内置模块 time 和 datetime 完成,且有多种方法供我们选择,当然转换时我们可以直接利用当前时间或指定的字符串格式的时间格式. 获取当前时间转换 我们可以利用内置模块 datetime 获取当前时间,然后将其转换为对应的时间戳. import datetime import time # 获取当前时间 dtime = datetime.datetime.now() un_time = time.mktime(dtime.timetuple())

  • 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_

  • python日期与时间戳的各种转换示例

    官方文档的示例中没有我们习惯的日期格式,查了很多博客转换日期和时间戳也都是大概的能得到结果的方式,常将 datetime 和 time 两个模块混用,个人觉得时间格式化不应该这么麻烦,还得用两个模块来支持?故而翻遍了源码,总结以下常用的几种日期和时间戳的转换方式. 以下主要有三个元素(时间字符串,格式,Unix时间戳),可将时间字符串转为另一种时间格式,或将时间字符串转为时间戳,或将时间戳转为时间字符串. datetime 和 time 两个模块,任意一个都能转换完成. 以下两个模块均列出示例:

  • spring mvc4的日期/数字格式化、枚举转换示例

    日期.数字格式化显示,是web开发中的常见需求,spring mvc采用XXXFormatter来处理,先看一个最基本的单元测试: package com.cnblogs.yjmyzz.test; import java.math.BigDecimal; import java.util.Date; import java.util.Locale; import org.junit.Test; import org.springframework.context.i18n.LocaleConte

  • MySQL中日期和时间戳互相转换的函数和方法

    ① 时间戳转换成日期 复制代码 代码如下: FROM_UNIXTIME 例如: 数据表中 invest_time 存储的是时间戳,如 1429063399 使用 FROM_UNIXTIME 可以把时间戳转换为日期: 复制代码 代码如下: select FROM_UNIXTIME(invest_time,'%Y年%m月%d') from crm_invest_apply 执行结果: ② 把日期转换为时间戳,和 FROM_UNIXTIME 正好相反 复制代码 代码如下: UNIX_TIMESTAMP

  • Python 日期的转换及计算的具体使用详解

    日期的转换及计算 对于日期,有时需执行不同时间单位的转换,或者接受字符串格式的日期,转换为 datetime 对象.有时需计算日期的范围,以及特定某个星期几的日期.这里更多用到的是 Python 提供的 datetime 模块. datetime 模块 日期与时间的简单转换 datetime 模块中可以通过创建 timedelta 对象表示一个时间段.如下示例: >>> from datetime import timedelta >>> a = timedelta(d

  • php日期转时间戳,指定日期转换成时间戳

    写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储.处理方便,但是不直观,格式化日期直观,但是处理起来不如Unix时间戳那么自如,所以有的时候需要互相转换,下面给出互相转换的几种转换方式. 一.在MySQL中完成 这种方式在MySQL查询语句中转换,优点是不占用PHP解析器的解析时间,速度快,缺点是只能用在数据库查询中,有局限性. 1. UNIX时间戳转换为日期用函数: FROM_UNIXTIME() 一般形式:selec

  • Python日期的加减等操作的示例

    本文介绍了Python日期的加减等操作的示例,分享给大家,也给自己留个笔记 1. 日期输出格式化 所有日期.时间的api都在datetime模块内. 1. datetime => string now = datetime.datetime.now() now.strftime('%Y-%m-%d %H:%M:%S') #输出2012-03-05 16:26:23.870105 strftime是datetime类的实例方法. 2. string => datetime t_str = '20

  • 使用python对excle和json互相转换的示例

    python 版本:2.7 只是读取excel的话可以直接使用xlrd 1.excle to json 代码如下 # -*-coding:utf8 -*- import xlrd from collections import OrderedDict import json import codecs file_name=raw_input('请输入要转换的excle文件路径:') wb = xlrd.open_workbook(file_name) dict_list = [] sh = wb

  • Python中xml和dict格式转换的示例代码

    在做接口自动化的时候,请求数据之前都是JSON格式的,Python有自带的包来解决.最近在做APP的接口,遇到XML格式的请求数据,费了很大劲来解决,解决方式是:接口文档拿到的是XML,在线转化为json格式(目的是拿到xml数据的模板),存放到json文件中,根据接口名去提取. github原文介绍:使用XML的Python模块感觉就像您在使用JSON 链接:https://github.com/martinblech/xmltodict 下载xmltodict(pip install xml

随机推荐