目录
先说下什么是函数,函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。
一、函数的基本组成
函数的组成:
def 函数名(参数): #参数可存在可不存在
函数体
return 返回值 #这行也是可存在可不存在
函数一般由def关键字、函数名、参数、函数体、返回值5部分组成
def关键字:函数代码块以 def 关键词开头,后接函数名称和圆括号()。
函数名称:函数名称为自定义名称,命名规则就是基本的命名规则(不能_开头,数字不能放在开头这些),另外还有注意的是,函数的命名不能和现有的内置函数(print、len这些)发生冲突,命名尽量能体现出函数的作用,比如查找姓名就可以命名成find_name这样。
(参数):(参数)紧跟在函数名后面,括号中为参数,参数可以存在也可以为空,,括号里的参数可以为数字、字符串,也可以是元组、列表、字典等
函数体:函数体为实现函数功能的相关代码段
return 返回值:return 返回值也是可以存在可以不存在
二、不带参数函数格式
def 函数名(): #定义一个函数名
函数体 #怎么实现这个函数
看下具体实现:
def Atom(): #定义一个函数名字为Atom
print("这是一个函数") #作用是打印"这是一个函数" 这句话
输出结果为: (空)
有人会有疑问了,我上面都写了print("这是一个函数") 这个了,为啥不打印啊?
因为print("这是一个函数") 是函数里的具体实现方式,并不会直接执行,如果想要去执行这句话,我们需要调用Atom这个函数。
def Atom(): #定义一个函数名字为Atom
print("这是一个函数") #作用是打印"这是一个函数" 这句话
Atom() #调用Atom 这时候才会去执行函数Atom里的代码
输出结果为:"这是一个函数"
三、带参数函数格式
def 函数名(参数): #定义一个函数名和参数
函数体 #函数的具体实现
看下具体实现:
def Atom(name): #定义一个函数Atom并且参数为 name
print("我叫"+name) #函数的作用为 打印 “我叫”和实际传参数 name
Atom("Atom") #把参数写在函数的括号里,如这行代码所示,打印结果为 我叫Atom
打印结果为:我叫Atom
一般情况下把Atom(name)函数里的这个name叫做形参(形式参数),而把实际传的值Atom("Atom")的Atom叫做实参(实际参数),形参和实参都可以是多个。
四、带返回值的函数
def 函数名(参数): #定义一个函数名和参数
函数体 #函数的具体实现
return 返回值 #返回的得到的结果
这里简单说下return和print的区别,return其实就是将ruturn返回的值返回给函数,但是不会打印出来,return的结果就是现在函数的值,这么说可能好理解,就是把函数看成一个变量,而return就是相当于“=”,表示赋值的意思,函数(变量)=return XXX(赋值给变量),而print只是打印某个值和函数的实际运算没有任何关系,我想打印啥就打印啥,不会是函数的返回值
def Atom(name): #定义一个函数Atom并且参数为 name
print("我叫"+name) #函数的作用为 打印 “我叫”和实际传参数 name
print(Atom("Atom")) #现在我打印下这个函数,输出结果为 我叫Atom和None
输出结果为:我叫Atom #返回这个是因为函数的实现就是要打印 我叫Atom这句话
None #返回为None是因为这个函数没有返回值,所以我打印这个函数返回的值就是None
好那我现在给他一个返回值看看打印的是啥
def Atom(name): #定义一个函数Atom并且参数为 name
print("我叫"+name) #函数的作用为 打印 “我叫”和实际传参数 name
return name #返回name的实参给到函数Atom(name)
print(Atom("Atom")) #打印函数Atom()
输出的结果为:我叫Atom #返回这个是因为函数的实现就是要打印 我叫Atom这句话
Atom #然后打印函数Atom("Atom"),返回的值是Atom,是因为我return name(Atom)给了函数Atom(name),可以把函数理解为一个变量,而return就是赋值的意思。
这块又个语法,就是在函数里有return后,后面的代码会不执行,看下例子
def Atom(name): #定义一个函数Atom并且参数为 name
return name #返回name的实参给到函数Atom(name)
print("我叫"+name) #函数的作用为 打印 “我叫”和实际传参数 name
print(Atom("Atom")) #打印函数Atom()
打印结果为:Atom
因为我先有的return才有的print("我叫"+name),所以执行到return后,直接就把值返回给函数了,所以下面print就没有执行,所以return语句除了执行返回值外,还有中断函数执行的作用
下图为公众号二维码,内容会同步发出,大家可以关注一起学习
这个是张狗子小哥哥的公众号,会分享一些平时的工作心得,可以关注看下。