时间与时间戳的转换(Python)

首先,什么是时间戳?

  • 时间戳是指格林威治时间自1970年1月1日(00:00:00 GMT)至当前时间的总秒数。它也被称为Unix时间戳(Unix Timestamp)。
  • 百度百科对时间戳的定义是,一个能表示一份数据在某个特定时间之前已经存在的、 完整的、 可验证的数据,通常是一个字符序列,唯一地标识某一刻的时间。

在python中,时间戳是一串数字,当我们要把它转换为具有一定格式的时间数据如 ‘2018-08-08 11:11:11’ 时,需要用到time模块。同样,时间数据也可以转换为时间戳。

具体操作有如下几种:

  • 将时间转换为时间戳
  • 重新格式化时间
  • 时间戳转换为时间
  • 获取当前时间及将其转换成时间戳(实际需求)

1、将时间转换成时间戳

将时间数据2018-08-08 11:11:11转换成时间戳,
具体的操作过程为:

  • 利用strptime()函数将时间转换成时间数组!!
  • 利用mktime()函数将时间数组转换成时间戳!!
import timedt = '2018-08-08 11:11:11'
# 将时间转换成时间数组
timeArray = time.strptime(dt, "%Y-%m-%d %H:%M:%S")
print(timeArray) # time.struct_time(tm_year=2018, tm_mon=8, tm_mday=8, tm_hour=11, tm_min=11, tm_sec=11, tm_wday=2, tm_yday=220, tm_isdst=-1)
print(timeArray[0]) # 2018
# 将时间数组转换成时间戳
timestamp = time.mktime(timeArray)
print(timestamp)  # 1533697871.0

2、重新格式化时间

重新格式化时间需要以下的两个步骤:

  • 利用strptime()函数将时间转换成时间数组
  • 利用strftime()函数重新格式化时间
import timedt = '2018-08-08 11:11:11'
# 利用strptime()函数将时间转换成时间数组
timeArray = time.strptime(dt, '%Y-%m-%d %H:%M:%S')
# 利用strftime()函数重新格式化时间
dt_new = time.strftime('%Y-%m-%d - %H:%M:%S',timeArray)
print(dt_new)  # 2018-08-08 - 11:11:11

3、将时间戳转换成时间

在时间戳转换成时间中,首先需要将时间戳转换成localtime,再转换成时间的具体格式:

  • 利用localtime()函数将时间戳转化成localtime的格式
  • 利用strftime()函数重新格式化时间
import timetimestamp = 1533697871.0
# 利用localtime()函数将时间戳转化成时间数组
localtime = time.localtime(timestamp)
print(localtime)  # time.struct_time(tm_year=2018, tm_mon=8, tm_mday=8, tm_hour=11, tm_min=11, tm_sec=11, tm_wday=2, tm_yday=220, tm_isdst=0)
# 利用strftime()函数重新格式化时间
dt = time.strftime('%Y:%m:%d %H:%M:%S',localtime)
print(dt)  # 2018:08:08 11:11:11

4、按指定的格式获取当前时间!!☆重点掌握

基本步骤:

  • 利用time()获取当前时间,
  • 再利用localtime()函数转换为localtime(本地)时间数组,
  • 最后利用strftime()函数重新格式化时间。
import time# 获取当前时间
current_time = int(time.time())
print(current_time) # 1537873862
# 转换为localtime
localtime = time.localtime(current_time)
# 利用strftime()函数重新格式化时间
dt = time.strftime('%Y:%m:%d %H:%M:%S', localtime)
print(dt) # 返回当前时间:2018:09:25 19:14:34

参考原文

时间与时间戳如何转换相关推荐

  1. 前端开发中,js时间与时间戳的转换

    js时间与时间戳的转换 时间转换为时间戳:包含精确到秒和到毫秒 1.通过valueOf()取得原始对象的原始值获取时间,精确到毫秒 var a=(new Date()).valueOf();//a=1 ...

  2. html 时间戳日期转换成字符串,JavaScript时间与时间戳的转换操作实例分析

    本文实例讲述了JavaScript时间与时间戳的转换操作.分享给大家供大家参考,具体如下: 一.时间转时间戳:javascript获得时间戳的方法有五种,都是通过实例化时间对象 new Date() ...

  3. 格林威治时间(时间戳)转换成标准时间

    /// <summary>/// 格林威治时间(时间戳)转换成标准时间/// </summary>/// <param name="time"> ...

  4. js 时间与时间戳的转换

    一:时间转时间戳:javascript获得时间戳的方法有四种,都是通过实例化时间对象 new Date() 来进一步获取当前的时间戳 1.var timestamp1 = Date.parse(new ...

  5. Java处理时间/时区/普通时间与时间戳的转换

    将时间转换为时间戳: /* * 将时间转换为时间戳*/ public static String dateToStamp(String s) throws ParseException{String ...

  6. linux目录时间转换,Shell日期时间和时间戳的转换

    Gitlab的备份文件是以时间戳显示的,类似:1438624820_gitlab_backup.tar 为了更易于阅读,想把文件名转换成日期格式:2015-08-04_gitlab_backup.ta ...

  7. SQL语句时间和时间戳的转换

    sql语句时间转换为时间戳: unix_timestamp(`表字段名`)*1000 as 修改字段名, (需要判断时间戳的类型:13位数单位是毫秒---需要*1000:10位数是秒---不需要*) ...

  8. C++时间和时间戳的转换

    文章目录 时间戳转标准时间 标准时间转时间戳 方法一: 方法二 方法三 ( 微秒 ) 时间戳转标准时间 // timestamp.cpp#include <stdio.h> #includ ...

  9. JavaScript 时间与Unix时间戳互相转换,指定时间转换或获取当前时间

    工作上用到这个还挺多的,做个简单的随笔,以后查询的时候比较方便: 一般JS获取的时间戳默认是13位数字,在个人的工作中,PHP后台只需要精确到秒就行,看各位亲的需要了, 代码注释里尽量写的比较清楚了 ...

最新文章

  1. Spark的RDD 文件读取与保存
  2. 有一种爱,永远也无法逾越
  3. Gradle Sync: Wait for the other thread to finish acquiring the distribution
  4. linux gcc编译错误:statically linked applications requires at runtime the shared libraries
  5. Vue实现访问百度音乐API实现播放音乐功能
  6. 【Linux】一步一步学Linux——last命令(98)
  7. 使用log4j日志-配置载入问题
  8. nginx mysql双机热备_MYSQL双机热备
  9. 捍卫军人的尊严(武汉548公交车一幕)
  10. java基础知识点(6)——循环语句for-while
  11. ctf 改变图片高度_通过CRC32爆破修改图片的宽高 ctf-misc图片隐写
  12. 人脸生成识别 Towards Pose Invariant Face Recognition in the Wild
  13. 高职对计算机课程要求,高职计算机课程对学生编程能力培养.doc
  14. 精选 | 2018年4月R新包推荐
  15. return可以返回多个值_JDK10的新特性:var泛型和多个接口实现
  16. java套接字实验总结,实验三、WINSOCK套接字编程实验报告
  17. js 对象数组追加元素
  18. 03173软件开发工具主观题汇总
  19. opencv 0x00007FF986D04ED9 处(位于 ConsoleApplication2.exe 中)有未经处理的异常: Microsoft C++ 异常: cv::Exception
  20. Auto.js 读写txt文件

热门文章

  1. A Generic Deep Architecture for Single Image Reflection Removal and Image Smoothing(CEILNet)
  2. 软件工程 常见术语 中英对照
  3. chrome 图片助手下载
  4. 全职高手手游服务器维护,《全职高手》停服停运公告!
  5. 计算机系统启动密码怎么设置在哪里,如何设置电脑开机密码呢?教你设置系统登陆密码...
  6. 超级玛丽游戏python实现
  7. java短信验证码功能发送的验证码如何校验_java 实现发送短信验证码功能
  8. systemd启动流程分析
  9. Keil5新建STM32工程(二)
  10. 2012-Linux-18(使U-BOOT能正确引导LINUX for 1_20 error,but...)-1