python3的函数是简单简约的,但有很有个性,而且有一些很多意思的语法糖,了解并理解这些函数语法,是python学习中必经之路
def hello():
'''定义一个hello打印的函数'''
return 'hello world'
### 使用函数
print(hello())
def add(x, y):
return x+y
print(add(2,5))
def rst_a(*k, **s):
rst = 0
for v in k :
rst += v
return rst,s
print(rst_a(1,2,3,4,aa='aa',bb='bb'))
l = lambda x, y : x + y
print(l(2,8))
在Python中可以使用”@”语法糖来精简装饰器的代码,函数可以支持(args, *kwargs)可变参数。
import time
def t(func):
'''定义一个程序运行时间计算函数'''
def wrapper(*args, **kwargs):
start = time.time()#起始时间
func(*args, **kwargs)#要执行的函数
end = time.time()#结束时间
print('程序运行时间:{:.2f}ms'.format((end-start)*1000))
return wrapper
def log(func):
'''一个打印函数运行日志的方法'''
def wrapper(*args, **kwargs):
print('函数开始运行')
func(*args, **kwargs)
print('函数运行结束')
return wrapper
@log #打印日志
@t #统计程序运行时间
def myfunc(x,y):
'''打印从x到y的数值'''
for i in range(x,y):
print(i)
myfunc(3,6)