Python函数的基础内容

函数形式
def test(函数名)(x, y, z)(参数):
内部代码块
return(s)(返回值)

函数文字说明
函数内的参数分为形参和实参,在调用函数时输入的实参将传给形参来运行函数。在函数执行完毕后形参占的内存立即被释放,即函数结束后参数的赋值内容消失。

设置函数是为了实现某一个一个功能,函数遇到return立即结束。

Python中的过程就是没有返回值的函数。

函数的优点:1.代码重用 2.保持一致性,代码易维护。 3.可扩展性强

当返回值的个数等于0时,返回值为None。当返回值的个数等于1时,返回的值为该object。当返回值的个数大于1时,返回的值为这些object组成的元组,即返回一个tuple。

位置参数和关键字参数
传参数的方式分为传位置参数和传关键字参数,不论以哪种方式传入参数都必须和函数要求的参数一一对应,在位置参数和关键字参数混合使用时关键字参数必须在位置参数右边。

传入位置参数(必须按照顺序):

def test(x, y, z):
	print(x)
	print(y)
	print(z)


test(1, 2, 3)

传入关键字参数(无需考虑顺序):

def test(x, y, z):
	print(x)
	print(y)
	print(z)
	

test(y=2, x=1, z=3)

传入混合参数:

def test(x, y, z):
	print(x)
	print(y)
	print(z)


test(1, 2, z=3)

默认参数
在设置函数式设置默认值。

def handle(x, y="default"):
	print(x)
	print(y)

handle(1)
handle(1, 2)

** *aggs、***wargs **
在设置参数时加入 * args可以保证传入参数不限个数,并且会以元祖的方式去处理属于args的内容,并且在调用函数时支持输入列表,列表前加 * 代表将列表的每一个元素作为元组的元素,不加 * 会将列表作为元组的一个元素处理。

在设置函数时加入**wargs也可以保证传入参数不限个数,并且会以字典的方式处理属于kwargs的内容,并且在调用函数时支持输入字典。

在*args和kwargs同时使用时,*args放在kwargs的左边,表示支持一切形式的输入。

def test(x, *args):
	print(x)
	print(args)


test(1, 2, 3, 4, 5)
test(1, [2, 3, 4, 5])
test(1, *[2, 3, 4, 5])
def test(x, **kwargs):
	print(x)
	print(kwargs)


test(1, y=2, z=3)
test(1, **{"y" :2, "z" :3})
def test(x, *args, **kwargs):
	print(x)
	print(args)
	print(kwargs)


test(1,2,3,4,y=2,z=3)
test(1,*[2, 3, 4], **{"y" : 2, "z" : 3})

猜你喜欢

转载自blog.csdn.net/weixin_43690603/article/details/84239389