Python转换时间的图文方法


Posted in Python onJuly 01, 2019

time模块常用的中时间的转换。

python中的时间戳:通俗讲就是某个时刻的时间,单位是秒;

获取当前时间的时间戳:

time.time()

1)没有参数,

2)返回从1970年1月1日00:00:00(UTC)算起,到现在走了多少秒。

3)time()函数是时间转换的基础,许多时间转换函数,都以这个返回值做参数。

3)任何时候都可以用time函数讲时间存入一个变量,记录那个时刻。

例如:可以计算一段代码从开始到结束所用的时间。

Python转换时间的图文方法

struct_time元组:

此元组包含九个元素,可以用9个字记忆(年月日,时分秒,周天夏)。

  • 索引0,tm_year=年(2019)
  • 索引1,tm_mon=月(1-12)
  • 索引2,tm_mday=日(1-31)
  • 索引3,tm_hour=时(0-23)
  • 索引4,tm_min=分(0-59)
  • 索引5,tm_sec=秒(0-61)
  • 索引6,tm_wday=周(星期几,0-6)
  • 索引7,tm_yday=天(一年的第几天,0-366)
  • 索引8,tm_isdst=夏,(1,使用夏令时,0,不使用夏令时)

很多时间函数的返回值都是struct_time元组形式。

Python转换时间的图文方法

获取本地区时:time.timezone。

返回本地的区时的总时间秒,东区为负,西区为正,例如东八区区时(-8)

import time

zt=time.timezone
print(zt, zt/3600)

-28800 -8.0

Python转换时间的图文方法

时间戳转换与时间元组。

转换世界时(0时区):time.gmttime([s])

1)将以秒为单位的时间参数s(时间戳),转换为时间元组。

2)如果没有给出s,默认是现在的时间(time.time())

例如:

#基准时间,验证时间戳是不是从1970年1月1日00:00:00开始。

gmt=time.gmtime(0)
print(gmt)
---time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)print()

用索引输出世界时时间的各项值

for n in time.gmtime():
  print(n,end='/')

---2019/6/29/9/27/39/5/180/0/

提取需要的元素,输出时间。

now=time.gmtime()
print(f'\n{now[0]}年/{now[1]}月{now[2]}日 '
   f'{now[3]}:{now[4]}:{now[5]}')

---2019年/6月29日 9:39:40

Python转换时间的图文方法

转换本地时间(本地区时):time.localtime(s)

与世界时转换功能一样。是在0时区的基础上加上计算机提供的区时而已。

import tim
lt=time.localtime()
print(lt)

---time.struct_time(tm_year=2019, tm_mon=6, tm_mday=29, tm_hour=18, tm_min=11, tm_sec=14, tm_wday=5, tm_yday=180, tm_isdst=0)


print(f'\n8区时:{lt[0]}年/{lt[1]}月{lt[2]}日 '
   f'{lt[3]}:{lt[4]}:{lt[5]}')
gt=time.gmtime()
print(f'\n世界时:{gt[0]}年/{gt[1]}月{gt[2]}日 '
   f'{gt[3]}:{gt[4]}:{gt[5]}')

东8 区:2019年/6月29日 18:12:47

世界时:2019年/6月29日 10:12:47

北京时间与世界时时差8小时。

如果电脑的系统设置了夏令时,索引[8]的值是1

Python转换时间的图文方法

将时间元组转换为时间戳:time.mktime(t)

1)是 localtime() 的反函数。将元组时间转换为基准时间到参数 t 时间的秒数。

2)参数t是时间元组(struct_time)或9个元素的元组。

lt=time.localtime()
s=time.mktime(lt)
print(s)

Python转换时间的图文方法

直接输出可读时间

转换时间元组为可读时间:time.asctime(t)

1)参数t,是时间元组。上面说过函数localtime(),和gmtime()的返回值是将时间戳转换为了时间元组。可以直接将他们的返回值作为asctime()的参数,返回一个可读的时间。

now=time.asctime(time.gmtime())
print('世界时:',now)

世界时: Sat Jun 29 10:42:02 2019

2)参数t的默认值是函数locatime()返回的默认值。

例如:

print('本地时:',time.asctime())

本地时: Sat Jun 29 18:42:02 2019

Python转换时间的图文方法

转换时间戳为可读本地时间:time.ctime(s)

1)参数s是一个时间戳。他转换的结果与time.asctime()格式完全相同。仅参数不同。

print(time.ctime(11111111111))


---Mon Feb 6 03:45:11 2322

2)转换成的可读时间是本地时间。

3)如果未提供s,参数s的默认值是当时的本地时间。与asctime的默认返回结果一样。

print(time.ctime())
print(time.asctime())


---Sat Jun 29 19:22:16 2019

---Sat Jun 29 19:22:16 2019

Python转换时间的图文方法

格式化指令符的应用

字符串格式化时间:time.strftime(f[, t])

转换一个元组或 struct_time 表示的由 gmtime() 或 localtime() 返回的时间到由 format 参数指定的字符串。

1)参数f是格式化对应的指令。

2)参数t是时间元组,默认是 localtime() 返回的当前时间。 如果提供t参数,要注意不能超出范围(比如不能用20来给月份赋值)。

图片中有具体的指令。

例如:

import time
t=time.strftime("%Y-%m-%d,%H:%M:%S")
print(t)---2019-06-29,20:44:22

需要注意的是,字符串中有中文字符是行不通的。

Python转换时间的图文方法

含中文输出时间的示例:

字符串元组中的数据没有命令符中全面,而命令符中如果有中文会很麻烦,这时最好用f-string格式化,可以将几个函数搭配使用。

例如:

import time
lt=time.localtime()
now=f'{lt[0]}年{lt[1]}月{lt[2]}日,' \
  f'\n{lt[3]}:{lt[4]}:{lt[5]}' \
  f'\n星期{lt[6]}' \
  f'\n本年的第{lt[7]}天' \
  f'\n本年的第{time.strftime("%U")}周'
print(now)

Python转换时间的图文方法

字符串时间转换为时间元组:time.strptime(s ,f )

返回一个元组字符串,

1)参数s是按时间元组提供数字,但用字符串表示,例如“2019,8,25”

2)参数f是时间命令符,应与s参数对应。

例如:

sp=time.strptime('2019,3,30',"%Y,%m,%d")
print(sp)

Python转换时间的图文方法

利用time.sleep函数,暂停调用线程运行。

time.sleep(s):暂停s秒调用线程运行。参数s可以是浮点数。

import time
a=1
while a<5:  
  print(time.ctime())
  time.sleep(1)
  a+=1

Python转换时间的图文方法

Python 相关文章推荐
简述Python中的面向对象编程的概念
Apr 27 Python
python清除指定目录内所有文件中script的方法
Jun 30 Python
在Windows系统上搭建Nginx+Python+MySQL环境的教程
Dec 25 Python
Python的“二维”字典 (two-dimension dictionary)定义与实现方法
Apr 27 Python
Python使用一行代码获取上个月是几月
Aug 30 Python
Python+OpenCV感兴趣区域ROI提取方法
Jan 10 Python
Python设计模式之策略模式实例详解
Jan 21 Python
python启动应用程序和终止应用程序的方法
Jun 28 Python
python动态文本进度条的实例代码
Jan 22 Python
Python实现七个基本算法的实例代码
Oct 08 Python
matplotlib交互式数据光标mpldatacursor的实现
Feb 03 Python
python实战之90行代码写个猜数字游戏
Apr 22 Python
Python列表对象实现原理详解
Jul 01 #Python
win8.1安装Python 2.7版环境图文详解
Jul 01 #Python
Python为何不能用可变对象作为默认参数的值
Jul 01 #Python
浅析Python与Mongodb数据库之间的操作方法
Jul 01 #Python
Python字典对象实现原理详解
Jul 01 #Python
Python Pandas 获取列匹配特定值的行的索引问题
Jul 01 #Python
Python动态语言与鸭子类型详解
Jul 01 #Python
You might like
教你IIS6的PHP最佳配置方法
2006/09/05 PHP
实用函数4
2007/11/08 PHP
PHP写MySQL数据 实现代码
2009/06/15 PHP
解析PHP无限级分类方法及代码
2013/06/21 PHP
php将字符串随机分割成不同长度数组的方法
2015/06/01 PHP
PHP链表操作简单示例
2016/10/15 PHP
PHP从零开始打造自己的MVC框架之类的自动加载实现方法详解
2019/06/03 PHP
JavaScript中的Screen屏幕对象
2008/01/16 Javascript
PHP 与 js的通信(via ajax,json)
2010/11/16 Javascript
jquery ajax中使用jsonp的限制解决方法
2013/11/22 Javascript
JavaScript基础函数整理汇总
2015/01/30 Javascript
使用AngularJS制作一个简单的RSS阅读器的教程
2015/06/18 Javascript
清除js缓存的多种方法总结
2016/12/09 Javascript
JavaScript基础之流程控制语句的用法
2017/08/31 Javascript
详解关于JSON.parse()和JSON.stringify()的性能小测试
2019/03/14 Javascript
vue+web端仿微信网页版聊天室功能
2019/04/30 Javascript
[01:14:05]《加油DOTA》第四期
2014/08/25 DOTA
python使用any判断一个对象是否为空的方法
2014/11/19 Python
Python使用matplotlib实现在坐标系中画一个矩形的方法
2015/05/20 Python
python3.5使用tkinter制作记事本
2016/06/20 Python
详解django实现自定义manage命令的扩展
2019/08/13 Python
Python实现把多维数组展开成DataFrame
2019/11/30 Python
Python基于unittest实现测试用例执行
2020/11/25 Python
Radley英国官网:英国莱德利小狗包
2019/03/21 全球购物
澳大利亚最大的在线美发和美容零售商之一:My Hair Care & Beauty
2019/08/24 全球购物
第二层交换机和路由器的区别?第三层交换机和路由器的区别?
2013/05/23 面试题
大学生毕业自我鉴定范文
2013/09/19 职场文书
代理班主任的自我评价
2014/02/04 职场文书
yy司仪主持词
2014/03/22 职场文书
市场营销战略计划书
2014/05/06 职场文书
个人安全承诺书
2014/05/22 职场文书
机械专业应届毕业生自荐书
2014/06/12 职场文书
逃课打麻将检讨书
2014/10/05 职场文书
2014年勤工助学工作总结
2014/11/24 职场文书
成绩报告单家长评语
2014/12/30 职场文书
Consul在linux环境的集群部署
2022/04/08 Servers