详解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 time模块用法实例详解
Sep 11 Python
自己使用总结Python程序代码片段
Jun 02 Python
Phantomjs抓取渲染JS后的网页(Python代码)
May 13 Python
Python编程之黑板上排列组合,你舍得解开吗
Oct 30 Python
python实现微信跳一跳辅助工具步骤详解
Jan 04 Python
Django logging配置及使用详解
Jul 23 Python
numpy数组做图片拼接的实现(concatenate、vstack、hstack)
Nov 08 Python
Python中的引用和拷贝实例解析
Nov 14 Python
Tensorflow设置显存自适应,显存比例的操作
Feb 03 Python
详解pycharm连接远程linux服务器的虚拟环境的方法
Nov 13 Python
python 检测图片是否有马赛克
Dec 01 Python
全网非常详细的pytest配置文件
Jul 15 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
yii2 数据库读写分离配置示例
2017/02/10 PHP
用JavaScript仿PS里的羽化效果代码
2011/12/20 Javascript
Js制作简单弹出层DIV在页面居中 中间显示遮罩的具体方法
2013/08/08 Javascript
JavaScript中访问节点对象的方法有哪些如何使用
2013/09/24 Javascript
js动态添加事件并可传参数示例代码
2013/10/21 Javascript
js 判断浏览器使用的语言示例代码
2014/03/22 Javascript
JS实现适合于后台使用的动画折叠菜单效果
2015/09/21 Javascript
JS实现图片平面旋转的方法
2016/03/01 Javascript
js手动播放图片实现图片轮播效果
2016/09/17 Javascript
js倒计时小实例(多次定时)
2016/12/08 Javascript
canvas 画布在主流浏览器中的尺寸限制详细介绍
2016/12/15 Javascript
Vue2 Vue-cli中使用Typescript的配置详解
2017/07/24 Javascript
jquery的 filter()方法使用教程
2018/03/22 jQuery
其实你可以少写点if else与switch(推荐)
2019/01/10 Javascript
原生JS实现动态添加新元素、删除元素方法
2019/05/05 Javascript
angularjs自定义过滤器demo示例
2019/08/24 Javascript
Python中使用装饰器和元编程实现结构体类实例
2015/01/28 Python
Python函数式编程指南(三):迭代器详解
2015/06/24 Python
Python利用IPython提高开发效率
2016/08/10 Python
Python基础学习之常见的内建函数整理
2017/09/06 Python
Python读取Json字典写入Excel表格的方法
2018/01/03 Python
解决phantomjs截图失败,phantom.exit位置的问题
2018/05/17 Python
python使用response.read()接收json数据的实例
2018/12/19 Python
Python-while 计算100以内奇数和的方法
2019/06/11 Python
Python使用itcaht库实现微信自动收发消息功能
2020/07/13 Python
html+css实现自定义图片上传按钮功能
2019/09/04 HTML / CSS
利用HTML5实现使用按钮控制背景音乐开关
2015/09/21 HTML / CSS
护士辞职信范文
2014/01/19 职场文书
个人求职信范例
2014/01/29 职场文书
群众路线批评与自我批评
2014/02/06 职场文书
不听老师话的万能检讨书
2014/10/04 职场文书
学校开学标语
2014/10/06 职场文书
2014年餐厅服务员工作总结
2014/11/18 职场文书
公司2015年终工作总结
2015/05/26 职场文书
初一语文教学反思
2016/03/03 职场文书
浅谈redis缓存在项目中的使用
2021/05/20 Redis