一.定义
对功能进行定义和封装,在需要时候,随时拿过来直接调用,定义和封装的就是函数.
函数:对代码块的封装和定义
二.定义,调用函数
定义函数的语法:
def 函数名():
函数体(代码块)
函数名的命名规则和变量的命名规则一样.
函数的调用:
函数名() 使用函数名去调用,函数就会被调用.
例:
def fan():
print("先找到电饭煲,")
print("将适量的米洗好,")
print("将洗好的米放入电饭煲中,")
print("插上电源,")
print("将到合适的时间.")
fan()
结果:
先找到电饭煲,
将适量的米洗好,
将洗好的米放入电饭煲中,
插上电源,
将到合适的时间.
三.函数的返回值 return
当函数结束的时候,该调用方一个结果.
return作用:遇到return,函数就会停止不会再继续执行.
return的几种情况:
(1).如果return什么都不写后者不写return.那么返回的就是None.
例:
def fan():
print("先找到电饭煲,")
print("将适量的米洗好,")
print("将洗好的米放入电饭煲中,")
print("插上电源,")
print("将到合适的时间.")
return
ret=fan()
print(ret)
结果:
先找到电饭煲,
将适量的米洗好,
将洗好的米放入电饭煲中,
插上电源,
将到合适的时间.
None
(2).如果return后面写一个返回值,则调用者可以接收一个结果.
例:
def fan():
print("先找到电饭煲,")
print("将适量的米洗好,")
print("将洗好的米放入电饭煲中,")
print("插上电源,")
print("将到合适的时间.")
return "做米饭步骤"
ret=fan()
print(ret)
结果:
先找到电饭煲,
将适量的米洗好,
将洗好的米放入电饭煲中,
插上电源,
将到合适的时间.
做米饭步骤
(3).如果return后面写了多个结果,则调用者可以接收一个元组(tuple),调用者可以直接解构成多个变量.
例:
def yue():
print("约会")
return "送花","吃饭","看电影"
a,b,c=yue()
print(a,b,c)
结果:
约会
送花 吃饭 看电影
四.函数的参数.
在函数执行的时候,给函数传递信息
参数分为:形参和实参.
例:
def yue(song,fangshi):
print("%s,吃饭,%s" % (song,fangshi))
yue("送花","看电影")
yue("不送","逛街")
结果:
送花,吃饭,看电影
不送,吃饭,逛街
函数的参数个数是没有要求的,但是,在运行的时候形参和实参要匹配,按照位置把实参赋值给形参.
1.实参:在函数调用的位置,实际是给函数传递的值
实参的分类:
(1)位置参数
(2)关键值参数. 在实参调用的时候可以指定参数的值是多少.
(3)混合参数. 先写位置参数在写关键字参数,否则会报错.
例:
def xinxi(name,age,sex,hobby,salary):
print("%s\t%s\t%s\t%s\t%s\t" % (name,age,sex,hobby,salary))
xinxi("abc",21,"女","听歌",'10000')
xinxi(age=20,name="abc",hobby="听歌",salary=10000,sex="女")
xinxi("abc",21,"女",salary=10000,hobby="听歌")
结果:
abc 21 女 听歌 10000
abc 20 女 听歌 10000
abc 21 女 听歌 10000
2.形参:在函数声明的位置,声明出来的变量
形参的分类:
(1)位置参数
(2)默认值参数
(3)默认值和位置参数混合使用
例:
def xinxi(id,name,sex="男"):
print("id:%s,名字:%s,性别:%s" % (id,name,sex))
xinxi(2,"b","女")
xinxi(1,"a",)
结果:
id:2,名字:b,性别:女
id:1,名字:a,性别:男
函数语法:
def 函数名(形参)
函数体(代码块)
(return " ")
函数名(实参)
例:1+2+3+4+...+n=?
def num(n):
sum = 0
count=1
while count<=n:
sum+=count
count+=1
return sum
ret=num(100)
print(ret) ==<5050>
例:判断n是奇数还是偶数?
def fn(n):
if n%2==0:
return "偶数"
return "奇数"
ret=fn(425)
print(ret) ==<奇数>