Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)

Python处理时间和时间戳的内置模块就有time,和datetime两个,本文先说time模块。

关于时间戳的几个概念

时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量。

时间元组(struct_time),包含9个元素。

time.struct_time(tm_year=2017, tm_mon=10, tm_mday=1, tm_hour=14, tm_min=21, tm_sec=57, tm_wday=6, tm_yday=274, tm_isdst=0) 

时间格式字符串,字符串形式的时间。

time模块与时间戳和时间相关的重要函数

time.time() 生成当前的时间戳,格式为10位整数的浮点数。

time.strftime()根据时间元组生成时间格式化字符串。

time.strptime()根据时间格式化字符串生成时间元组。time.strptime()与time.strftime()为互操作。

time.localtime()根据时间戳生成当前时区的时间元组。

time.mktime()根据时间元组生成时间戳。

示例

关于时间戳和格式化字符串的简单示例如下

import time

#生成当前时间的时间戳,只有一个参数即时间戳的位数,默认为10位,输入位数即生成相应位数的时间戳,比如可以生成常用的13位时间戳
def now_to_timestamp(digits = 10):
 time_stamp = time.time()
 digits = 10 ** (digits -10)
 time_stamp = int(round(time_stamp*digits))
 return time_stamp

#将时间戳规范为10位时间戳
def timestamp_to_timestamp10(time_stamp):
 time_stamp = int (time_stamp* (10 ** (10-len(str(time_stamp)))))
 return time_stamp

#将当前时间转换为时间字符串,默认为2017-10-01 13:37:04格式
def now_to_date(format_string="%Y-%m-%d %H:%M:%S"):
 time_stamp = int(time.time())
 time_array = time.localtime(time_stamp)
 str_date = time.strftime(format_string, time_array)
 return str_date

#将10位时间戳转换为时间字符串,默认为2017-10-01 13:37:04格式
def timestamp_to_date(time_stamp, format_string="%Y-%m-%d %H:%M:%S"):
 time_array = time.localtime(time_stamp)
 str_date = time.strftime(format_string, time_array)
 return str_date

#将时间字符串转换为10位时间戳,时间字符串默认为2017-10-01 13:37:04格式
def date_to_timestamp(date, format_string="%Y-%m-%d %H:%M:%S"):
 time_array = time.strptime(date, format_string)
 time_stamp = int(time.mktime(time_array))
 return time_stamp

#不同时间格式字符串的转换
def date_style_transfomation(date, format_string1="%Y-%m-%d %H:%M:%S",format_string2="%Y-%m-%d %H-%M-%S"):
 time_array = time.strptime(date, format_string1)
 str_date = time.strftime(format_string2, time_array)
 return str_date

实验

print(now_to_date())
print(timestamp_to_date(1506816572))
print(date_to_timestamp('2017-10-01 08:09:32'))
print(timestamp_to_timestamp10(1506816572546))
print(date_style_transfomation('2017-10-01 08:09:32'))

结果为

1506836224000
2017-10-01 13:37:04
2017-10-01 08:09:32
1506816572
1506816572
2017-10-01 08-09-32

以上这篇Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python 获得13位unix时间戳的方法

    在python 开发web程序时,需要调用第三方的相关接口,在调用时,需要对请求进行签名.需要用到unix时间戳. 在python里,在网上介绍的很多方法,得到的时间戳是10位.而java里默认是13位(milliseconds,毫秒级的). 下面介绍python获得时间戳的方法: 1.10时间戳获取方法: >>> import time >>> t = time.time() >>> print t 1436428326.76 >>>

  • Python时间戳使用和相互转换详解

    本文实例为大家分享了Python时间戳使用和相互转换的具体代码,供大家参考,具体内容如下 1.将字符串的时间转换为时间戳 方法: import time a = "2013-10-10 23:40:00" # 将其转换为时间数组 timeArray = time.strptime(a, "%Y-%m-%d %H:%M:%S") # 转换为时间戳 timeStamp = int(time.mktime(timeArray)) timeStamp == 13814196

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

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

  • python正常时间和unix时间戳相互转换的方法

    本文实例讲述了python正常时间和unix时间戳相互转换的方法.分享给大家供大家参考.具体分析如下: 这段代码可以用来转换常规时间格式为unix时间戳,也可以将unix时间戳转换回来, 例如:1332888820 格式转换成 2012-03-28 06:53:40的形式 # -*- coding: utf-8 -*- import time def timestamp_datetime(value): format = '%Y-%m-%d %H:%M:%S' # value为传入的值为时间戳(

  • Python时间戳与时间字符串互相转换实例代码

    复制代码 代码如下: #设a为字符串import timea = "2011-09-28 10:00:00" #中间过程,一般都需要将字符串转化为时间数组time.strptime(a,'%Y-%m-%d %H:%M:%S')>>time.struct_time(tm_year=2011, tm_mon=9, tm_mday=27, tm_hour=10, tm_min=50, tm_sec=0, tm_wday=1, tm_yday=270, tm_isdst=-1) #

  • Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)

    Python处理时间和时间戳的内置模块就有time,和datetime两个,本文先说time模块. 关于时间戳的几个概念 时间戳,根据1970年1月1日00:00:00开始按秒计算的偏移量. 时间元组(struct_time),包含9个元素. time.struct_time(tm_year=2017, tm_mon=10, tm_mday=1, tm_hour=14, tm_min=21, tm_sec=57, tm_wday=6, tm_yday=274, tm_isdst=0) 时间格式字

  • python中time模块指定格式时间字符串转为时间戳

    本文章可以解决任意字符串格式时间转为时间戳 返回json格式 可以在此基础上进行修改 时间格式控制符 说明 %Y 四位数的年份,取值范围为0001~9999,如1900 %m 月份(01~12),例如10 %d 月中的一天(01~31)例如:25 %B 本地完整的月份名称,比如January %b 本地简化的月份名称,比如Jan %a 本地简化的周日期,Mon~Sun,例如Wed %A 本地完整周日期,”Monday~Sunday,例如Wednesday %H 24小时制小时数(00~23),例

  • Python使用time模块实现指定时间触发器示例

    本文实例讲述了Python使用time模块实现指定时间触发器.分享给大家供大家参考,具体如下: 其实很简单,指定某个时间让脚本处理一个事件,比如说一个get请求~ 任何语言都会有关于时间的各种方法,Python也不例外. help(time)之后可以知道time有2种时间表示形式: 1.时间戳表示法,即以整型或浮点型表示的是一个以秒为单位的时间间隔.这个时间的基础值是从1970年的1月1号零点开始算起. 2.元组格式表示法,即一种python的数据结构表示.这个元组有9个整型内容.分别表示不同的

  • 详解Python数据类型、进制转换、字符串格式化的问题

    目录 1. 整数.浮点数和复数 浮点数 Decimal 复数 2.进制转换 进制数字类型 整型进制操作 3. 字符串 3.1 转义字符 3.2 字符串取值 4. 字符串运算与转换 5. 字符串的常用方法 判断系列 查找统计系列 字符串转换类 +和join的效率问题 6 . 字符串格式化 %格式化 format格式化 f格式化 练习 7. 字符串拼接 1. 整数.浮点数和复数 Python2中区分整型int.长整型longPython3中只有统称为 整型int 浮点数 即带有小数点的数字,因为浮点

  • PHP 返回13位时间戳的实现代码

    13位时间戳生成函数如下所示: private function getMillisecond() { list($t1, $t2) = explode(' ', microtime()); return (float)sprintf('%.0f',(floatval($t1)+floatval($t2))*1000); } 以上这篇PHP 返回13位时间戳的实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • iOS时间字符串格式化输出技巧详解

    一.前言 最近项目开发过程中用到了大量的关于时间的处理,将后台返回的时间字符串转换为指定的格式时间再显示在UI上. 例如: 将后台返回的时间字符串2017-04-16 13:08:06转换为:2017年04月16日.2017年04月.04月16日.2017-04-16.2017-04.04-16.13:08.星期几等等. 项目是多人开发,由于前期没有统一处理时间转换的问题,后期发现项目中好多关于时间转换的代码,大部分都是通过(- : 等字符)截取成字符串数组再取相应时间拼接成指定格式,输出在UI

  • Python中bytes字节串和string字符串之间的转换方法

    目录 背景 代码 代码说明: 验证一下 附:bytes和string区别 总结 背景 在工作中经常会碰到字节串(bytes)与字符串(string)之间转换的问题,做个记录. bytes只负责用字节序列的形式(二进制形式)存储数据,不关心数据本身是图片.文字.视频等等.如果需要使用并且展示的话,按照对应的解析规则处理,就可以拿到对应类型的数据.如常见的字符串类型,只需要使用对应的字符编码格式,就可以拿到字符串的内容. 下面会用一些代码来表示bytes的构造,以及和字符串之间的转换. 代码 先看一

  • python获取时间戳的实现示例(10位和13位)

    在python 开发web程序时,需要调用第三方的相关接口,在调用时,需要对请求进行签名.需要用到unix时间戳.  在python里,在网上介绍的很多方法,得到的时间戳是10位.而java里默认是13位(milliseconds,毫秒级的). 下面介绍python获得时间戳的方法: 1.10时间戳获取方法: >>> import time >>> t = time.time() >>> print t 1436428326.76 >>&g

  • Python语法分析之字符串格式化

    前序 There should be one - and preferably only one - obvious way to do it. ---- the Zen of Python 意译:Python提倡用一种,而且最好是只有一种方法来完成一件事 虽然 Python 有以上的提倡,但却在字符串格式化方面,没有做到这一点. 字符串格式化 敲黑板,划重点:在 Python 中有至少三种常见方式实现字符串格式化: %-formatting 格式(Python2.6以前,推荐输出时使用) st

随机推荐