09.2 python基础--time库

09.2.1 常用函数
  • time()----获取当前时间戳,即计算机内部时间值,浮点数
  • ctime()----获取当前时间并以易读方式表示,返回字符串
  • gmtime()----获取当前时间,表示为计算机可处理的时间格式
import time as  t
print(t.time())
print(t.ctime())
print(t.gmtime())

>>1522765487.9220555
>>Tue Apr  3 22:24:47 2018
>>time.struct_time(tm_year=2018, tm_mon=4, tm_mday=3, tm_hour=14, tm_min=24, tm_sec=47, tm_wday=1, tm_yday=93, tm_isdst=0)
09.2.2 时间格式化
  • strftime(tpl, ts)-----tpl是格式化模板字符串,用来定义输出效果,ts是计算机内部时间类型变量
import time as ti
t = ti.gmtime()
print(ti.strftime("%Y-%m-%d %H:%M:%S",t))
>>2018-04-03 15:15:09
  • strptime(str, tpl)-----str是字符串形式的时间值,tpl是格式化模板字符串,用来定义输入效果
timeStr = '2018-01-26 12:55:20'
print(ti.strptime(timeStr,"%Y-%m-%d %H:%M:%S"))
>>time.struct_time(tm_year=2018, tm_mon=1, tm_mday=26, tm_hour=12, tm_min=55, tm_sec=20, tm_wday=4, tm_yday=26, tm_isdst=-1)
09.2.3 程序计时
  • 测量时间:perf_counter()--------返回一个CPU级别的精确时间计数值,单位为秒
import time
start = time.perf_counter()
end = time.perf_counter()
t = end - start
print(t)

  • 产生时间:sleep()-------s拟休眠的时间,单位是秒,可以是浮点数
09.2.4 文本进度条
import time
scale = 10
print("------执行开始------")
for i in range(scale+1):
    a = '*'*i
    b = '.'*(scale-i)
    c = (i/scale)*100
    print('[{}->{}]'.format(a,b))
    print("{:^3.0f}%[{}->{}]".format(c,a,b))   #取3位,保留0位小数,居中对齐  
    time.sleep(0.1)
print("------执行结束------")

##结果
------执行开始------
 0 %[->..........]
10 %[*->.........]
20 %[**->........]
30 %[***->.......]
40 %[****->......]
50 %[*****->.....]
60 %[******->....]
70 %[*******->...]
80 %[********->..]
90 %[*********->.]
100%[**********->]
------执行结束------

##单行刷新文本进度条
import time as t
s =50
print('执行开始'.center(s//2,'-'))
start = t.perf_counter()
for i in range(s+1):
    a = '*'*i
    b = '.'*(s-i)
    c = i/s*100
    dur =t.perf_counter() - start
    print('\r{:^3.0f}%[{}->{}]{:.2f}s'.format(c,a,b,dur),end = '')
    t.sleep(0.3)
print('\n'+'执行结束'.center(s//2,'-'))



09.2.5 时区与夏令时
import time as t
n = t.timezone  ## 获取当前时区和UTC时间相差的秒数,在没有夏令时的情况下的间隔,东八区的是 -28800
m = t.altzone   ## 获取当前时区与UTC时间相差的秒数,在有夏令时的情况下
y = t.daylight  ## 测当前是否是夏令时时间状态, 0 表示是

print(n,m,y)
>-28800 -32400 0
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值