工作中经常需要对时间进行获取,处理和格式化,我们可以使用Python内置的time库来解决这些问题。

时间戳

时间戳,表示从1970年1月1日0点0分0秒到现在的时间经过了多少秒。

import timecur_time = time.time()print(cur_time)# 等待time.sleep(3)# 检查等待前后过去的时间now_time = time.time()print(now_time)go_time = now_time - cur_timeprint('等待前后过去了:{}秒!'.format(go_time))

运行结果:

1600246971.35530541600246974.35551等待前后过去了:3.000204563140869秒!

格式化

time.time()的结果是浮点数对象

格式化显示本地时间:

import time'''格式化当前时间 年-月-日 时:分:秒%X表示本地时间%Y表示年,%m表示月,%d表示日'''print(time.strftime("%Y-%m-%d %X"))

运行结果:

2020-09-16 17:11:04

更详细的显示本地时间:

import time'''格式化当前时间 年-月-日 时:分:秒 上下午 星期'''print(time.strftime("%Y-%m-%d %X %p %A"))

运行结果:

2020-09-16 17:13:21 PM Wednesday

结构化

time.localtime()的结果是struct_time对象

结构化时间对象的9个属性分别是年月日时分秒,本月第几周,本年第几天和夏令时。

import timesct_time = time.localtime()print(sct_time)# 结构化表示当地时间# 格式为:年-月-日 时:分:秒 本月几周 本年第几天 夏令时print('{}-{}-{} {}:{}:{} 本月第{}周 本年第{}天 夏令时:{}'.format(sct_time.tm_year,sct_time.tm_mon,sct_time.tm_mday,sct_time.tm_hour,sct_time.tm_min,sct_time.tm_sec,sct_time.tm_wday,sct_time.tm_yday,sct_time.tm_isdst))

运行结果:

2020-9-16 17:36:12 本月第2周 本年第260天 夏令时:0

相互转换

结构化时间 --> 时间戳

import timesct_time = time.localtime()print('当前结构化时间:{}'.format(sct_time))# struct2format mktimestr_time = time.time()print('当前时间戳:{}'.format(str_time))print('转换后的时间戳:{}'.format(time.mktime(sct_time)))

运行结果:

当前结构化时间:time.struct_time(tm_year=2020, tm_mon=9, tm_mday=17, tm_hour=22, tm_min=37, tm_sec=25, tm_wday=3, tm_yday=261, tm_isdst=0)当前时间戳:1600353445.3574238转换后的时间戳:1600353445.0

时间戳 --> 结构化时间

import timesct_time = time.localtime()print('当前结构化时间:{}'.format(sct_time))# struct2format mktimestr_time = time.time()print('当前时间戳:{}'.format(str_time))print('转换后的结构化时间:{}'.format(time.gmtime(str_time)))print((time.gmtime(str_time).tm_zone))print('转换后的结构化时间:{}'.format(time.localtime(str_time)))

运行结果:

当前结构化时间:time.struct_time(tm_year=2020, tm_mon=9, tm_mday=17, tm_hour=22, tm_min=42, tm_sec=53, tm_wday=3, tm_yday=261, tm_isdst=0)当前时间戳:1600353773.0630054转换后的结构化时间:time.struct_time(tm_year=2020, tm_mon=9, tm_mday=17, tm_hour=14, tm_min=42, tm_sec=53, tm_wday=3, tm_yday=261, tm_isdst=0)UTC转换后的结构化时间:time.struct_time(tm_year=2020, tm_mon=9, tm_mday=17, tm_hour=22, tm_min=42, tm_sec=53, tm_wday=3, tm_yday=261, tm_isdst=0)

你应该已经注意到,时间戳转换结构化时间有两个方法gmtime和localtime,其中gmtime表示标准时间,而localtime是加了时区后的时间,所以当前localtime比gmtime快8小时,这就是+8区的原因。

简单的字符串时间获取方式:

print(time.ctime()) # 当前时间的字符串形式,相当于把当前结构化时间用asctime方法格式化print(time.asctime(time.localtime()))

结果:

Thu Sep 17 22:48:48 2020Thu Sep 17 22:48:48 2020

datetime模块

datetime是对time模块的封装, 用起来更加简单,方便。

以下介绍几种常用的方法:

import datetimecurrent_time = datetime.datetime.now()print('time:',current_time)utc_time = datetime.datetime.utcnow()print('utc time:',utc_time)current_day = datetime.datetime.today()print('local time:',current_day)print('今年是哪一年?答:',datetime.datetime.today().year)print('今天属于那一月?答:',datetime.datetime.today().month)print('今天是本月第几天?答:',datetime.datetime.today().day)print('从0001年1月1日到今天过去了多少天?答:',datetime.datetime.today().toordinal())print('今天是礼拜几?答:',datetime.datetime.today().isoweekday())

运行结果:

time: 2020-09-17 23:10:54.315267utc time: 2020-09-17 15:10:54.315267local time: 2020-09-17 23:10:54.316267今年是哪一年?答:2020今天属于那一月?答:9今天是本月第几天?答:17从0001年1月1日到今天过去了多少天?答:737685今天是礼拜几?答:4

更多用法可以查看源码进行学习。

好文!必须在看

python自带time库吗_Python的内置库time相关推荐

  1. python自带的函数有哪些_内置函数 python自带的函数

    原博文 2018-05-25 16:27 − python自带的一些函数,直接拿过来能用的 print(bin(10)) #十进制转二进制 print(max(111,12))#取最大值 print( ...

  2. python里面print是什么函数_python print()内置函数

    啦啦啦啦啦啦,我又来了,学习任何东西都得坚持,我一定的好好加油!!! 今天来说说print()函数,前边我们已经用过好好多次啦,现在来学习哈吧!!! Python的内置函数,print() print ...

  3. python zip函数用于for循环_python zip 内置函数的使用

    定义:zip([iterable, ...]) zip()是Python的一个内建函数,它接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个tuple(元组),然后返回由这些tuples组 ...

  4. [转载] python自带sqlite库_Python内置库SQlite3使用指南

    参考链接: 使用Python和SQLite的SQL 2 如果你是软件开发人员,相信你一定知道或者曾经使用过一个非常轻量级的数据库--SQLite.它具有作为关系数据库所需的几乎所有功能,但是这个数据库 ...

  5. python内置库有哪些_python 内置库

    广告关闭 回望2020,你在技术之路上,有什么收获和成长么?对于未来,你有什么期待么?云+社区年度征文,各种定制好礼等你! version: 0. 2.0, configurations: }, de ...

  6. random输出1到10之间_第43P,随机数,Python内置库之random

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第43篇文章,第二阶段的课程:Python基础知识:Python内置库之random随机库. 学习本课程,建议先看一遍:[计算机基础 ...

  7. python好用的内置库_第42p,time库,Python中优秀的内置库

    大家好,我是杨数Tos,这是<从零基础到大神>系列课程的第42篇文章,第二阶段的课程:Python基础知识:Python内置库之time. 一.时间的三种格式 time是Python的内置 ...

  8. python内置库之学习configparser库(一)

    python内置库之学习configparser库(一) 1.引言 ini文件简介 [节] 键=值 注:节不能重复出现 2.自己封装了一个增删改查的类,可以参考一下 import configpars ...

  9. python函数大全和意思_python 之 内置函数大全

    一.罗列全部的内置函数 二.range.xrange(迭代器) 无论是range()还是xrange()都是Python里的内置函数.这个两个内置函数最常用在for循环中.例如: >>&g ...

最新文章

  1. 为什么delete表数据,磁盘空间却还是被占用
  2. MvvmLight:Command
  3. Web 趋势榜:上周最有意思又热门的 10 大 Web 项目 - 210709
  4. win2003 IIS6配置PHP 5.3.3(fastCGI方式+eAccelerator)+ASP.NET 4.0(MVC3)
  5. hive 修改cluster by算法_Hive基础之导出数据
  6. 台式机linux_什么将驱动主流台式机Linux?
  7. 简单的C语言开源软件,自己写的一个简单的数据库...完整开源...
  8. 程序员出差是去干什么_为什么女生不适合做程序员?原来互联网公司女生少,是由于这几点...
  9. 每天干的啥?(2017.6)
  10. STM32之外部中断
  11. python 结构体数组_关于python:将结构化数组转换为常规NumPy数组
  12. unity三维地图的经纬度如何在二维地图上表示_安全数据分析:数据点—地图—线性回归...
  13. npm install 本地安装与全局安装
  14. 厉害了,盘点那些改变世界的代码!
  15. 将excel表格嵌入html,excel中embed的使用
  16. html 更改元素坐标,利用JS修改元素的位置属性,为什么style.left可行而style.top失效?...
  17. 《Targeted Backdoor Attacks on Deep Learning Systems Using Data Poisoning》论文总结
  18. 色度学:RGB颜色空间与CMYK颜色空间的比较与图示
  19. python解一元二次方程ax^2+bx_python 练习题:定义一个函数quadratic(a, b, c),接收3个参数,返回一元二次方程ax^2+bx+c=0的两个解...
  20. 为什么罗永浩这种人都能做出来锤子手机?

热门文章

  1. g120变频器报7490怎么处理_西门子通讯profinet网络下怎么更换G120变频器等部件
  2. android 相机纹理,Android平台Camera实时滤镜实现方法探讨(五)--GLSurfaceView实现Camera预览...
  3. python语言格式化输出_Python字符串格式化输出
  4. php程序计算偶数和,php怎么编写计算双数的和
  5. 三十九、Vue项目上手 | 用户管理系统 实现添加用户功能(中篇)
  6. java进阶之路学习笔记
  7. 再谈变分自编码器(VAE):估计样本概率密度
  8. 亚马逊提出无监督虚拟增强句子表征学习框架,效果超越SimCSE
  9. 超越谷歌BERT!依图推出预训练语言理解模型ConvBERT
  10. Numpy:高性能科学计算和数据分析的基础包