01:函数调用
def print_info(name, age):
print(“姓名:%s,年龄:%d” % (name, age))
A: 位置参数调用函数
实参的个数需要和形参的个数统一,而且位置要一一对应
print_info(“小明”, 22)
B: 关键字参数调用函数
不关心函数调用时候实参传入的顺序, 只要形参名书写正确即可
print_info(age=22, name=”小明”)
C: 注:必须使用关键字参数调用函数的方法
def func(*, name, age):
print(name)
print(age)
func(name=”小明”, age=22)
D: 缺省参数
def print_info(name, age=18):
print(“姓名:%s” % name)
print(“年龄:%d” % age)
在函数的调用的时候
如果缺省参数位置 没有传入对应的实参 那么形参会使用自己的默认值
print_info(“小红”)
列如:上面的age没有实参传入,所以使用默认值age=18
如果缺省参数位置 传入了对应的实参 那么实参的值会把缺省参数的值进行覆盖
print_info(“老王”, 29)
上面的age就变成29了
E: 注意点:
pass 就是一个占位作用 防止因为格式不对而报错
如果定义了一个函数 而且函数有参数, 而且某一个形参是缺省参数 那么后面的形参也必须是缺省参数
def func(a, b=10, c=0):
pass
F:不定长元组
计算n个数的求和 (n是不确定)
def addxnum(new_list):
# 定义一个变量 保存求和
ret = 0
for value in new_list:
ret += value
return ret #注意return要跟for一齐,不然返回的就是一次的
result = addxnum([1, 2, 3, 4, 5]) #因为必须传入一个列表,所以加[]
print(result)
上面是不简便的
优化后的代码 -> 不定长参数元组(不确定有多少个形参)(默认是元组,与列表的区别是不可修改,但可以满足需求)
不定长元组
args不定长参数的参数名 名字可以命名为args 也可以自己任意起名
def addxnum(args): #号是为了告诉python这是不定长,但参数名还是args,区别于必须使用关键字调用函数的方法,关键字(*,)
print(type(args))
定义一个变量 保存求和
ret = 0
for value in args:
ret += value
ret