python进阶_Day4
思维导图:
作业:
作业一:
(1)定义一个闭包,用于求解方程的y与x值的变化,例如 y = ax + b。
def func1(a, b):def func2(x):y = a * x + breturn yreturn func2re = func1(1, 2)
print(re(1))
print(re(2))
运行结果:
作业二:
(2)创建一个闭包,实现统计函数执行的次数功能。有如下调用闭包函数的代码
def func_count():num = 0def func():nonlocal numnum += 1print(num)return funcf = func_count()
f()
f()
f()
运行结果:
作业三:
(3)请使用装饰器方式来统计输出1000句"siren_dream"的执行时间。
import time
def execution_time(func):def record():start = time.time()for i in range(10000):func()end = time.time()print(start)print(end)return end-startreturn record@execution_time
def print_out():print("siren_dream")result = print_out()
print(result)
运行结果:
作业四:
(4)定义一个函数, 返回字符串, 使用装饰器实现对这个字符串添加后缀.txt。
def add_txt(func):def txt():re = func() + '.txt'return rereturn txt@add_txt
def return_str():return 'Hello World'result = return_str()
print(result)