Python之函数【二】(函数的参数,函数的变量的作用域,函数的返回值)

前言

  • 一、函数的参数
    • 必传参数,默认参数,不定长参数
  • 二、函数变量的作用域
  • 三、函数的返回值
    • 1、return和print的区别
    • 2、return和break的区别​​​​​

前言

在实际使用中,遇到的return方面的问题。以及函数传递参数的先后顺序。记录函数中的小细节。

一、函数的参数

1、不定长参数

**kwargs: 可以不传,也可以传多个。传参的形式:key=value,key=value
   在定义函数的时候,在函数内部kwargs是一个字典。

解释:在这里kw可以理解为:key  word (关键字),这里的传参也叫关键字传参。

举例:

def myfunc(**kwargs):
    # kwargs是字典。
    print(kwargs)

# 调用的时候
myfunc(name="xj", year="2021")

2、传参的顺序

必传参数 > 默认参数 > *args >  **kwargs

 (1)如果一个函数里面含有不定长参数  *args和**kwargs

 (2)如果一个函数中包含默认参数和不定长参数

二、函数变量的作用域

官方中文网站:https://docs.python.org/zh-cn/3.9/library/functions.html

1、函数内部定义的变量(只会作用于函数内部的范围)

注意点:这种在内部定义的变量,在函数的外部是不能调用和访问的。

 这里会报错。


2、函数外部定义的变量(作用于整个当前的模块)

例如:全局变量

FLAG = True  # 全局变量

如果需要修改全局变量,那么需要用global来申明定义的变量

3、常量:只定义和使用

注意:其实在Python 中没有 常量 与 变量 之分。全局变量就相当于是常量。

三、函数的返回值

1、return和print的区别

举例:
高铁站取票:屏幕上面的显示的就是print。吐出来的高铁票就是return
解释:print打印出来的数据是不能拿出来用的,只是给看看一下。return返回的数据是可以直接拿出来给其他人用的数据。

函数不一定要有返回值。 --len()
我们知道这个len()函数,实际上就是统计一个字符串或者列表的长度的。是给用户看的。也可以用Ctrl+B进去看看源码,是没有return。
 

函数没有return,a = 函数调用,a就是None.
比如print()这个函数,print("sss")
a=print("sss")
print(a)
这样子打印出来的就是None

 函数设计返回值,必然是因为使用了这个函数之后,要用它的返回值,做另外的事情。

return的作用:

1、程序执行完成之后,返回数值。

2、当程序执行遇到return时,函数终止。

3、return [没有值/有多个值]

4、return 后面没有值,相当于return None

5、一个函数里是可以有多个return。在不同的分支可以使用return.

6、返回多个值:return 值1,值2,值3....

举例:一个计算加法的函数


(1)当return有返回值

(2)当return没有返回值

(3)当return后面有多个返回值

注意:这里函数里面的值只能写在return里面,不能像这样写:

  

(4)当程序遇到了return后,程序后面的都会终止

 (5)一个函数里是可以有多个return。在不同的分支可以使用return.

 

 (6)接收函数返回值时:result = 函数调用()。result是个元组。或者,变量1, 变量2...= 函数调用()  有几个返回值,就用几个变量接收。

 补充点:

1、==   和 is 的区别:

==   比较:数据值是否相等;  is   内存地址是否是一样的。

2、带有for循环的函数,使用break和return的区别:

 

总结

暂无

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值