详解Python time库的使用


Posted in Python onOctober 10, 2019

一、时间获取函数

>>> import time
>>> time.time()
1570530861.740123
>>> time.ctime()
'Tue Oct 8 18:34:27 2019'
>>> time.gmtime()
time.struct_time(tm_year=2019, tm_mon=10, tm_mday=8, tm_hour=10, tm_min=34, tm_sec=52, tm_wday=1, tm_yday=281, tm_isdst=0)

二、时间格式化

time.strftime(format[, t])
format ? 格式字符串。
t ? 可选的参数t是一个struct_time对象。
python中时间日期格式化符号:
%Y 年份
%m 月份
%B 月份名称 January
%b 月份名称缩写 Jan
%d 日期
%A 星期 Monday
%a 星期缩写 Mon
%H 小时 24
%h 小时 12
%p 上下午
%M 分钟
%S 秒
>>> t=time.gmtime()
>>> time.strftime("%Y-%m-%d %H:%M:%S", t)
'2019-10-08 10:38:06'
>>> time.strftime("%Y-%B-%d-%A-%H-%p-%S")
'2019-October-08-Tuesday-18-PM-50'
>>> time.strftime("%A-%p")
'Tuesday-PM'
>>> time.strftime("%M:%S")
'39:59'

三、时间进度条

测量时间:perf_counter() 返回系统运行时间。由于返回值的基准点是未定义的,所以,只有连续调用的结果之间的差才是有效的。

>>> start = time.perf_counter()
>>> start
684.980333384
>>> end = time.perf_counter()
>>> end
696.094559111
>>> end-start
11.114225726999962

产生时间:sleep(secs) 推迟调用线程的运行

secs:休眠时间;可以是浮点数,如time.sleep(2.7)

#TextProBarV3.py
import time
scale = 40
print('执行开始'.center(scale//2,'-'))
start = time.perf_counter()
for i in range(scale+1):
  a = '*' * i
  b = '.' * (scale - i)
  c = (i / scale) * 100
  dur = time.perf_counter() - start
  print("\r{:^3.0f}%[{}->{}]{:.2f}".format(c,a,b,dur),end='')
  time.sleep(0.1)
print('\n'+'执行结果'.center(scale//2,'-'))

四、七段数码管

七段数码管(seven-segment indicator)由7 段数码管拼接而成,每段有亮或不亮两种情况,改进型的七段数码管还包括一个小数点位置。

详解Python time库的使用

七段数码管能形成27=128 种不同状态,其中部分状态能够显示易于人们理解的数字或字母含义,因此被广泛使用。

详解Python time库的使用

#DrawSevenSegDisplay.py
import turtle, datetime
def drawGap(): #绘制数码管间隔
  turtle.penup()
  turtle.fd(5)
def drawLine(draw):  #绘制单段数码管
  drawGap()
  turtle.pendown() if draw else turtle.penup()
  turtle.fd(40)
  drawGap()
  turtle.right(90)
def drawDigit(d): #根据数字绘制七段数码管
  drawLine(True) if d in [2,3,4,5,6,8,9] else drawLine(False)
  drawLine(True) if d in [0,1,3,4,5,6,7,8,9] else drawLine(False)
  drawLine(True) if d in [0,2,3,5,6,8,9] else drawLine(False)
  drawLine(True) if d in [0,2,6,8] else drawLine(False)
  turtle.left(90)
  drawLine(True) if d in [0,4,5,6,8,9] else drawLine(False)
  drawLine(True) if d in [0,2,3,5,6,7,8,9] else drawLine(False)
  drawLine(True) if d in [0,1,2,3,4,7,8,9] else drawLine(False)
  turtle.left(180)
  turtle.penup()
  turtle.fd(20)
def drawDate(date):
  turtle.pencolor("red")
  for i in date:
    if i == '-':
      turtle.write('年',font=("Arial", 18, "normal"))
      turtle.pencolor("green")
      turtle.fd(40)
    elif i == '=':
      turtle.write('月',font=("Arial", 18, "normal"))
      turtle.pencolor("blue")
      turtle.fd(40)
    elif i == '+':
      turtle.write('日',font=("Arial", 18, "normal"))
    else:
      drawDigit(eval(i))
def main():
  turtle.setup(800, 350, 200, 200)
  turtle.penup()
  turtle.fd(-350)
  turtle.pensize(5)
  drawDate(datetime.datetime.now().strftime('%Y-%m=%d+'))
  turtle.hideturtle()
main()

总结

以上所述是小编给大家介绍的Python time库的使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python中定义结构体的方法
Mar 04 Python
Python编程之序列操作实例详解
Jul 22 Python
Python加载带有注释的Json文件实例
May 23 Python
python爬虫的数据库连接问题【推荐】
Jun 25 Python
Python实现正整数分解质因数操作示例
Aug 01 Python
Python使用一行代码获取上个月是几月
Aug 30 Python
Python中的引用知识点总结
May 20 Python
在Python中append以及extend返回None的例子
Jul 20 Python
Python3+Requests+Excel完整接口自动化测试框架的实现
Oct 11 Python
wxPython多个窗口的基本结构
Nov 19 Python
python实现ssh及sftp功能(实例代码)
Mar 16 Python
python使用matplotlib绘制折线图的示例代码
Sep 22 Python
python自动化测试无法启动谷歌浏览器问题
Oct 10 #Python
python批量将excel内容进行翻译写入功能
Oct 10 #Python
Python爬虫爬取Bilibili弹幕过程解析
Oct 10 #Python
安装python及pycharm的教程图解
Oct 10 #Python
Pytorch中的variable, tensor与numpy相互转化的方法
Oct 10 #Python
3行Python代码实现图像照片抠图和换底色的方法
Oct 10 #Python
python通过SSH登陆linux并操作的实现
Oct 10 #Python
You might like
火影忍者:这才是千手柱间和扉间的真正死因,角都就比较搞笑了!
2020/03/10 日漫
PHP初学者头疼问题总结
2006/07/08 PHP
两个强悍的php 图像处理类1
2009/06/15 PHP
PHP similar_text 字符串的相似性比较函数
2010/05/26 PHP
PHP设计模式之命令模式的深入解析
2013/06/13 PHP
PHP CURL 多线程操作代码实例
2015/05/13 PHP
php生成微信红包数组的方法
2019/09/05 PHP
IE和Mozilla的兼容性汇总event
2007/08/12 Javascript
Juqery Html(),append()等方法的Bug解决方法
2010/12/13 Javascript
js内存泄露的几种情况详细探讨
2013/05/31 Javascript
登陆成功后自动计算秒数执行跳转
2014/01/23 Javascript
关闭浏览器输入框自动补齐 兼容IE,FF,Chrome等主流浏览器
2014/02/11 Javascript
javascript处理a标签超链接默认事件的方法
2015/06/29 Javascript
简洁实用的BootStrap jQuery手风琴插件
2016/08/31 Javascript
Jquery中attr与prop的区别详解
2017/05/27 jQuery
Javascript组合继承方法代码实例解析
2020/04/02 Javascript
[01:24:09]Ti4 冒泡赛第二轮DK vs C9 1
2014/07/14 DOTA
使用python Django做网页
2013/11/04 Python
Python使用sorted排序的方法小结
2017/07/28 Python
django自带serializers序列化返回指定字段的方法
2019/08/21 Python
Ubuntu下Python+Flask分分钟搭建自己的服务器教程
2019/11/19 Python
python装饰器的特性原理详解
2019/12/25 Python
Python3中的f-Strings增强版字符串格式化方法
2020/03/04 Python
django-xadmin根据当前登录用户动态设置表单字段默认值方式
2020/03/13 Python
jupyter notebook的安装与使用详解
2020/05/18 Python
详解python的super()的作用和原理
2020/10/29 Python
全网最全python库selenium自动化使用详细教程
2021/01/12 Python
thinkphp5 路由分发原理
2021/03/18 PHP
利用CSS3实现折角效果实例源码
2016/09/28 HTML / CSS
西部世纪面试题
2014/12/05 面试题
大学四年规划书范文
2013/12/27 职场文书
中秋手机店促销方案
2014/06/16 职场文书
导游词之晋城蟒河
2019/12/12 职场文书
pytorch中的model.eval()和BN层的使用
2021/05/22 Python
HTML+CSS制作心跳特效的实现
2021/05/26 HTML / CSS
MongoDB误操作后使用oplog恢复数据
2022/04/11 MongoDB