前言:
当前朋友们对“python中的返回值”大致比较看重,咱们都想要了解一些“python中的返回值”的相关资讯。那么小编同时在网上汇集了一些对于“python中的返回值””的相关知识,希望朋友们能喜欢,看官们一起来了解一下吧!定义
1.定义:def 关键词开头,空格之后接函数名称和圆括号()。2.参数:圆括号用来接收参数。若传入多个参数,参数之间用逗号分割。 参数可以定义多个,也可以不定义。 参数有很多种,如果涉及到多种参数的定义,应始终遵循位置参数、*args、默认参数、**kwargs顺序定义。 如上述定义过程中某参数类型缺省,其他参数依旧遵循上述排序3.注释:函数的第一行语句应该添加注释。4.函数体:函数内容以冒号起始,并且缩进。5.返回值:return [表达式] 结束函数。不带表达式的return相当于返回 Nonedef 函数名(参数1,参数2,*args,默认参数,**kwargs): """注释:函数功能和参数说明""" 函数体 …… return 返回值
def 关键词开头,空格之后接函数名称和圆括号(),最后还有一个":"。
def 是固定的,不能变,必须是连续的def三个字母,不能分开。
空格 为了将def关键字和函数名分开,必须空(四声),当然你可以空2格、3格或者你想空多少都行,但正常人还是空1格。
函数名:函数名只能包含字符串、下划线和数字且不能以数字开头。虽然函数名可以随便起,但我们给函数起名字还是要尽量简短,并能表达函数功能
括号:是必须加的,先别问为啥要有括号,总之加上括号就对了!
注释:每一个函数都应该对功能和参数进行相应的说明,应该写在函数下面第一行。以增强代码的可读性。
调用:就是 函数名() 要记得加上括号
# def是关键字 define# 函数 mylen叫做函数名# ():必须写def mylen(s): """ 计算字符串长度的函数 :return: """ length = 0 for i in s: length += 1 return length# 函数的调用:函数名+括号length = mylen("hello world")print(length)# 函数名# 必须由字母下划线数字组成,不能是关键字,不能是数字开头# 函数名还是要有一定的意义能够简单说明函数的功能函数的返回值
我们只需要在函数的最后加上一个return,return后面写上你要返回的值就可以了。
接下来,我们就来研究一下这个return的用法。
return关键字的作用
return 是一个关键字,在pycharm里,你会看到它变成蓝色了。你必须一字不差的把这个单词给背下来。这个词翻译过来就是“返回”,所以我们管写在return后面的值叫“返回值”
return的作用:结束一个函数的执行
要研究返回值,我们还要知道返回值有几种情况:分别是没有返回值、返回一个值、返回多个值
没有返回值
不写return的情况下,会默认返回一个None:
#函数定义def mylen(): """计算s1的长度""" s1 = "hello world" length = 0 for i in s1: length = length+1 print(length)#函数调用str_len = mylen()#因为没有返回值,此时的str_len为Noneprint('str_len : %s'%str_len)
只写return,后面不写其他内容,也会返回None,有的同学会奇怪,既然没有要返回的值,完全可以不写return,为什么还要写个return呢?这里我们要说一下
return的其他用法,就是一旦遇到return,结束整个函数。
def ret_demo(): print(111) return print(222)ret = ret_demo()print(ret)
return None:和上面的两种情况一样,我们一般不这样写。
def ret_demo(): print(111) return None print(222)ret = ret_demo()print(ret)
函数返回值为None的三种情况
函数的返回值为None有三种情况#1.不写返回值#2.只写一个return#3.return None (几乎不用)返回一个值
函数定义def mylen(): """计算s1的长度""" s1 = "hello world" length = 0 for i in s1: length = length+1 return length#函数调用str_len = mylen()print('str_len : %s'%str_len)
注意:return和返回值之间要有空格,可以返回任意数据类型的值
返回多个值
可以返回任意多个、任意数据类型的值
def ret_demo1(): '''返回多个值''' return 1,2,3,4def ret_demo2(): '''返回多个任意类型的值''' return 1,['a','b'],3,4ret1 = ret_demo1()print(ret1)ret2 = ret_demo2()print(ret2)
返回的多个值会被组织成元组被返回,也可以用多个值来接收
def ret_demo2(): return 1,['a','b'],3,4#返回多个值,用一个变量接收ret2 = ret_demo2()print(ret2)#返回多个值,用多个变量接收a,b,c,d = ret_demo2()print(a,b,c,d)#用多个值接收返回值:返回几个值,就用几个变量接收a,b,c,d = ret_demo2()print(a,b,c,d)
解压缩扩展
#序列解压一>>> a,b,c,d = (1,2,3,4)>>> a>>> b>>> c>>> d#序列解压二>>> a,_,_,d=(1,2,3,4)>>> a>>> d>>> a,*_=(1,2,3,4)>>> *_,d=(1,2,3,4)>>> a>>> d#也适用于字符串、列表、字典、集合>>> a,b = {'name':'eva','age':18} >>> a'name'>>> b'age'调用函数的规则
1.函数名() 函数名后面+圆括号就是函数的调用。2.参数: 圆括号用来接收参数。 若传入多个参数: 应按先位置传值,再按关键字传值 具体的传入顺序应按照函数定义的参数情况而定3.返回值 如果函数有返回值,还应该定义“变量”接收返回值 如果返回值有多个,也可以用多个变量来接收,变量数应和返回值数目一致无返回值的情况:函数名()有返回值的情况:变量 = 函数名()多个变量接收多返回值:变量1,变量2,... = 函数名()