1 函数的定义,函数名,函数体,以及函数的调用
1.1函数的定义
就是对一个代码块或者功能的封装和定义.什么时候用, 什么时候执行
1.2函数名
是用def关键字来定义函数,函数定义的语法
语法:
def 函数名()
函数体(代码快)
1.3函数体
就是函数被执行后要执行的代码
1.4函数的调用:
使用函数名可以调用函数,写法:
函数名() #所有的()都是函数的调用
这个时候函数提会被执行
1.5函数名的命名规范:
1.字母, 数字, 下划线
2.不能以数字开头, 更不能全是数字
3.不能是关键字(默写目前已经学过的关键字)
4.不能太长
5.有意义
6.不要用中文
7.驼峰体和下划线
def test():
print('are you ok?')
print("i'm fine,thanks")
test()
test()
2.函数的返回值
执行完函数之后,可以使用return来返回结果
2.1函数中遇到return,此函数结束,不在执行
def chat():
print('hey,do you have time to chat with me?')
print('yeap,i also to chat with you.')
print('did you watching the UEFA Champions League?')
return#后边的不在执行
print('yes,MCF wins')
chat()
2.2给函数的调用者一个访问结果
函数的返回值可以有多个结果
def chat():
print('hey,do you have time to chat with me?')
print('yeap,i also to chat with you.')
print('did you watching the UEFA Champions League?')
return'yes,RMA wins'
chat_football = chat()
print(chat_football)
print(tuple(chat_football))
print(list(chat_football))
print(set(chat_football))#加类型的话会吧字符床自动结构成字符
关于返回值:
如果return什么都不写,挥着干脆不写return,那么返回的就是None
如果return后边谢了一个只,则调用者可以接受一个结果
如果return后面谢了多个结果,则调用者可以接收一个tuple,调用者可以直接结构成多个变量
3.函数的参数
参数,函数在调用的时候指定具体的一个变量值,就是参数
语法:
def 函数名(参数列表)
函数体
def chat(applications):
print('拿出手机')
print('打开'+applications)
print('找漂亮妹子')
print('约不约')
chat('陌陌')
chat('微信')
chat('探探')
关于参数:
1.形参
写在函数声明的位置的变量叫形参,形式上的一个完整,表示这个函数需要xxx
2.实参
在函数调用的时候给函数传递的值,叫实参,实际执行的时候给函数传递的信息目标是给函数xxx
3.传参
给函数传递信息的时候将实际参数交给形式参数的过程被称为传参
def chat(applications): # applications形参
print('拿出手机')
print('打开'+applications)
print('找漂亮妹子')
print('约不约')
chat('陌陌')# 实参
len('微信') #实参
print('探探')# 实参
参数的分类:
参数可以有很多个.每个参数之间用逗号隔开
先说实参
1.位置参数.
按照位置把实参赋值给形参
2.关键字参数.
对照形参.给每个参数赋值
3.混合参数
位置参数和关键字参数混合着使用
必须先写位置参数, 然后才是关键字参数
关于形参:(有三种形式,今天两种)
1.位置参数
到目前位置使用的都是位置参数
2.默认值参数
当出现很多重复的参数的时候.考虑使用默认值参数
默认值参数必须在位置参数后面
当调用的地方不给出值的时候. 会使用默认值
def chat(applications,address,age):
print('拿出手机')
print('打开'+applications+'附近漂亮的'+str(age)+岁妹子)
print('约不约')
chat('wechat','Peking',18)# 在多个变量传参的时候,系统会默认按照位置把实参赋值到形参
def max(a,b):
if a > b:
return a
else:
return b
def max(a,b):
c = a if a > b else b
return c
位置参数好不好呢?如果是少量的参数还算OK,没有问题.但是如果函数在定义的时候参数非常多怎么办?程序员必须记住,我有哪些参数,而且还有记住每个参数的位置,否则函数就不能正常调用了.那则么办呢?python提出了一种叫做关键字参数.我们不需要记住每个参数的位置.只要记住每个参数的名字就可以了
def chat(applications,address,age):
print('拿出手机')
print('打开'+applications+'附近漂亮的'+str(age)+岁妹子)
print('约不约')
chat(applications = 'wechat',address = 'Peking',age = 18)
可以把上述两种参数混合着使用.也就是说在调用函数的时候即可以给出位置参数,也可以指定关键字参数