一、1. Python中时间的三种表达形式
(1).时间戳(小数):
1970-01-01 00:00:00 (格林威治天文台时间)秒数。(方便计算机存储和运算)
代码:print(time.time())
(2).时间元组(命名元组):
用于参数的传递。可以将时间戳加粗样式作为参数。
代码:print(time.localtime())
(3).格式化的时间字符串
代码:print(time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(984767443)))
这三者之间的转化关系:
时间戳<->时间元组<->时间字符串print(time.mktime(time.strptime(“2001-09-11 8:00:00”,"%Y-%m-%d %H:%M:%S")))
2. 将时间元组转为时间字符串,默认当前时间
代码:time.strftime()
将时间字符串转为时间元组
代码:time.strptime()
将时间元组转为时间戳
代码:time.mktime()
二、装饰器函数
- 装饰器函数:在不修改其他函数代码的前提下,给其他函数增加(修改)功能的函数。
(1).装饰器函数高阶函数;
(2).将原函数作为装饰器函数的参数;
(3).在装饰器函数中定内部函数,在内部函数中执行原函数。
(4).将新增的功能添加到内部函数中;
(5).将内部函数返回;
(6).将返回的内部函数替代原函数。
def w(func):
def n():
print(“开始执行…”)
func()
print(“执行结束…”)
return n - @w 装饰器的语法糖 :
@w ==> odd = w(odd) def odd():
for i in range(10):
if i % 2 = = 1:
print(i)
odd()import time
def run_time(n):
def _run_time(func):
def run(*args,**kwargs):
start = time.time() (时间戳 )
for i in range(n):
func(*args,**kwargs)
print(“运行的平均时间:”,
(time.time()-start)/n)
return run
return _run_time
@run_time(10)
def func1(n):
s = 0
for i in range(n):
for j in range(n):
for k in range(n):
s += 1
print(s)
func1(100)
input()
3. 装饰器的应用场景:登录验证、写日志、执行时间、权限管理。
装饰器是代码的一种设计模式。