python二级复习DAY6:time库、文本进度条

mooc课的课堂笔记

import time

time库

时间获取

time()   获取当前时间戳,即计算机内部时间值,浮点数。(从1970年1月1日0:00开始到现在)

time.time()      >>>1516939876.6022282

ctime()    获取当前时间并以易读方式表示,返回字符串

time.ctime()   >>>'Fr Jan 26 12:11:16 2018'

gmtime()   获取当前时间,表示为计算机可处理的时间格式

时间格式化

将时间以合理的方式展示出来

strftime(tpl,ts)     tpl是格式化模板字符串,用来定义输出效果,ts是计算机内部时间类型变量

t=time.gtime()

time.strftime("%Y-%m_%d %H:%M:%S",t)

>>>'2018-01-26 12:55:20'

格式化字符串:

%Y    年份   0000~9999

%m   月份   01~12

%B   月份名称   January~December

%b   月份名称缩写   Jan~Dec

%d   日期   01~31

%A   星期   Monday~Sunday

%a   星期缩写   Mon~Sun

%H   小时(24时制)  00~23

%I   小时(12时制) 01~12

%P   上/下午    AM,PM

%M    分钟   00~59

%S    秒    00~59

time.strptime(str,tpl)   str是字符串形式的时间值,tpl是格式化模板字符串,用来定义输入效果

可以将字符串转换成一个计算机内部可以操作的一个时间。

程序计时应用

程序计时指测量起止动作所经历时间的过程

测量时间:perf_counter()    返回一个CPU级别的精确时间计数值,单位为秒,由于这个计数值起点不准确,连续调用差值才有意义。

产生时间:slee(s)    s拟休眠的时间,单位是秒,可以是浮点数

文本进度条

采用字符串方式打印可以动态变化的文本进度条

需要在一行中逐渐变化

开始

import time      #引入库

scale=10    #文本进度条的大概宽度

print("---执行开始---")     #标签

for i in range(scale+1):      

     a='*'*i

     b='.'*(scale-i)

     c=(i/scle)*100

     print("{:^3.0f)%[{}->{}]".format(c,a,b))

     time.slee(0.1)      #定义了一个休眠时间

print("--执行结束---")

单行动感刷新

刷新:用后打印的字符覆盖之前的字符

不能换行:print()需要被控制

要能回退:打印后光标回退到之前的位置\r

import time

for i in range(101):

     print("\r{:3}%".format(i),end="")#将光标停留在当前行

     time.sleep(0.1)

(在命令行中写)

完整效果

import time
scale = 50
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}s".format(c,a,b,dur),end="")
      time.sleep(0.1)
print("\n"+"执行结果".center(scale//2,'-'))

(在命令提示符中写)如果在idle中写的话不能实现覆盖

举一反三

运行时间较长的程序中增加进度条

在任何希望提高用户体验的用用中增加进度条

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值