def count_number():
count = 0
for i in range(1,10):
count+=i
print('计算:{}'.format(count))
return count
print(count_number())
#注意:return后面的代原由网码不执行,所以我们的有效代码要放在retu原由网rn之前
return表示函数结束
def count_number():
count = 0
for i in range(1,10):
count+=i
return count
print('计算:{}'.format(count))
print(count_number())
参数
函数参数的个数大于等于0
参数类型:位置参数 默认参数 动态参数 关键字参数
1. 位置参数:是有顺序的 我们通过函数传参的时候 是按顺序赋值
注意:调用函数的时候 有几个位置参数 就要传几个参数 否则会报错
def count_number(a,b,c): #形参,知道要传参数
count = 0
for i in range(a,b,c):
count+=i
print('计算:{}'.format(count))
return count
count_number(1,5,2) # 实参
count_number(c=2,a=0,b=200) # 指定参数赋值 声明赋值 变量名要跟形参保持一致
2 默认参数 : 给形参指定一个默认值
注意:有实参用实参,没实参才用默认参数
# 取形参默认值
def count_number(a=2,b=100,c=2): #形参
count = 0
for i in range(a,b,c):
count+=i
print('计算:{}'.format(count))
return count
count_number() #实参
#有实参用实参
def count_number(a=2,b=100,c=2): #形参
count = 0
for i in range(a,b,c):
count+=i
print('计算:{}'.format(count))
return count
count_number(0,50,2) #实参
注意:位置参数在 应该在默认参数之前
3.动态参数 一定要有* 默认写args *args 不定长参原由网数 想传几个参数就传几个 参数之间用逗号隔开
可传任意多个参数 不限制数据类型
参数到了函数内部 就变成了元组
def robbot_cat(*args): # *args 动态参数
print(args)
for item in args:
print('我是叮当猫,我可以变出好多好多东西,比如:{0}'.format(item))
robbot_cat('车','房子','存款')
robbot_cat()
def robbot_cat(*args): # *args 动态参数
pri原由网nt(args)
for item in args:
print('我是叮当猫,我可以变出好多好多东西,比如:{0}'.format(原由网item))
a=[['hello','哈哈'],['nihao','单身']]
robbot_cat(a)
robbot_cat(*a) # 这里的* 相当于脱外套 只脱一层
4. 关键字参数 **kwargs key values的形式赋值
1) key value的形式 参数之间用逗号隔开
2) 参数到了函数内部就变成了字典
def anyway(**kwargs):
print(kwargs)
anyway(a=1,b=5,c=88,age='18',name='张三')