python 之函数
1.函数的定义:
对代码块和功能的封装和定义.
2函数的格式:
def 函数名(形参列表):
函数体(return)
ret = 函数名(实参列表)
3.函数的返回值:
return,只要执行到return 函数的本次调用就会被停止
1.如果函数不写return, 没有返回值。 接收到的是None
2.写了return。 return后面什么都不写或者return后面的是None. 返回None
3.return 一个值。 返回一个结果
4.return 值,值,值 返回多个值。结果是元组
举列子: 下面里面可以有return,也可以没有,有的话只能写一个return
1 def learn (): 2 print("学习物理") 3 print("学习化学") 4 # return "成绩50" #打印score 此时不会有 学习生物和学习语文 5 print("学习生物") 6 print("学习语文") 7 # return "成绩90分","成绩91","成绩95" #此时返回的score为一个元祖("成绩90分","成绩91","成绩95") 8 return #,可以不跟值,此时返回为None 9 score = learn() 10 # learn() 11 print(score)
4.函数的参数:
参数: 函数在调用的时候给函数传递的信息 形参: 在函数声明的位置的变量
实参: 在函数调用的时候给出的具体的值 传参: 在函数调用的过程中把实参赋值给形参的过程.
实参:
1. 位置参数. 按照位置给形参传递信息
2. 关键字参数. 按照形参的名字给参数传递信息
3. 混合参数. 先位置后关键字
形参:
1. 位置参数
2. 默认值参数, 必须写在位置参数后面
3. 动态参数
举列子:
def yue(tools): # 在函数声明的位置。 给出来的参数叫形参。 形式上的一个参数. 用一个变量来表示 print("拿出手机") print("打开%s" % tools) print("找一找心怡的对方.") print("出来吃吃饭") print("唱唱歌") print("跳跳广场舞") # 在函数调用的时候。把实参的值赋值给形参的过程叫传参 yue("微信") # 在函数调用的地方给出的具体的值。 参数叫实参. 实际参数 yue("陌陌") yue("探探")
1.实参的列子:
1.位置参数: #按照位置给形参赋值
def food(good_food,nogood_food,drink):
print("我要吃",good_food,nogood_food,drink)
food("木须肉盖饭","粥","可口可乐") #我要吃 木须肉盖饭 粥 可口可乐
2.关键字参数: 按照形参的名字给参数赋值
def food(good_food,nogood_food,drink):
print("我要吃",good_food,nogood_food,drink)
food(good_food="木须肉盖饭",drink="可口可乐",nogood_food="粥")#我要吃 木须肉盖饭 粥 可口可乐
3.混合参数:#位置参数必须放在前面,关键字参数放在后面
def food(good_food,nogood_food,drink):
print("我要吃",good_food,nogood_food,drink)
food(drink="木须肉盖饭","可口可乐","粥") #错误,drink 必须放在后面
2.形参的列子:
1.位置参数: 按照位置声明参数,和实参一样
def information(name,age,sex):
print(name,age,sex)
information("王青","29","女")
information("张潇艺","1","女")
information("张阳","29","男")
information("妈妈","43","女")
2.默认值参数: 给参数传递值的时候, 不给值, 默认值起作用. 保证你至少有个值能用.给值得话,默认值不起作用.顺序: 位置参数必须放在前面。 默认值参数必须放在后面.
def information(name,age,sex="女"):
print(name,age,sex)
information("王青","29",)
information("张潇艺","1",)
information("张阳","29","男")
information("妈妈","43",) 此时的结果和1位置参数的结果一致,使用于大多情况一致的输入,特殊的单独处理即可.
3.动态参数: