以前写的python代码都是像记流水账一样,那么函数时什么额?它可以在任何需要它的地方进行调用,函数分为:
1、我们都知道内置函数 len() 是计算长度,如下:
s = ‘我是十位字符串666‘ lg = len(s) print(lg)
2、这是有没有想到自定义一个函数也是计算长度呢? 直接定义函数名 def xxx(): 一般小写,我们一起看看吧
def my_len(s): # 自定义 my_len 函数 count = 0 for i in s: count += 1 return count s = ‘我是十位字符串666‘ lg = my_len(s) # 调用 my_len 函数计算长度 print(lg)
3、函数返回值:return
①return 表示有返回值,结束函数调用,没返回值就不写 return
②return 可返回多个值,用多个变量接收:有多少返回值就用多少变量接收、用一个变量接收: 得到的是一个元组
# 多个返回值,有多少返回值就用多少变量接收,一个变量接收返回的是元组。 def common(): return 1, 2, ‘ss‘ print(‘一个变量接收:‘, common()) # 一个变量接收 r1, r2, r3 = common() # 多个变量接收 print(‘多个变量接收:‘, r1, r2, r3)
4、函数的形参与实参:
①形参,定义函数时的参数,接收参数;
②实参,调用函数实际传入的参数;
5、定义函数时注意:
def my_len(s, a, *args, q=123, **kwargs): # 万能参数 return s, a, args, q, kwargs # *args 是元组, **kwargs 是字典 lg = my_len(‘我是S‘, ‘我是a‘, ‘ar1‘, ‘ar2‘, q=321, name=‘小龙‘) print(lg)
6、另一种方式传参
① *arges:组合所有传过来的值,为元组
def login(*args): ‘‘‘ login注释 ‘‘‘ print(args) a = ‘小龙‘, ‘笑脸‘, ‘GG‘, 889 login(*a)
② **kwargs :关键字传参,组合为字典
def login(**kwargs): ‘‘‘ login注释 ‘‘‘ print(kwargs) login(a=1, b=2) a = {‘a‘: 1, ‘b‘: 2} login(**a)
欢迎来QQ交流群:482713805
原文:https://www.cnblogs.com/gsxl/p/12063755.html