Python学习——局部变量全局变量、函数缺省参数、函数多值参数、私有化

本文详细探讨了Python中的变量,包括局部变量和全局变量的使用,如何交换变量值,函数的缺省参数和多值参数,以及Python的私有化机制。讲解了在函数中如何通过`global`和`nonlocal`关键字操作全局变量,并举例说明了函数返回值为元组的特性。此外,还介绍了如何定义和使用带默认值的参数以及不定数量的参数。最后,解释了Python的私有变量表示方法及其访问限制。
摘要由CSDN通过智能技术生成
变量

变量和数据都是保存再内存中的
python中函数的参数传递和返回值都是靠引用传递的
数据保存再内存中的某个位置,变量中存放的时数据再内存中的地址
引用是指变量中记录数据的地址
可以使用id() 函数查看变量中保存数据所在的内存地址

局部变量和全局变量

局部变量是函数内部定义的变量,只能在函数内部使用
函数执行结束后,局部变量会被系统回收
全局变量是在整个py文件中声明

注:函数在执行时,变量处理过程:
首先会查找函数内部是否存在制定名称的变量,如果有,直接使用 如果没有会查找函数外不是否存在制定名称的全局变量。

如果函数内部存在和全局变量一样名称的局部变量,在函数内部不能直接修改全局变量的值,如果需要修改全局变量的值,需要使用 global关键字进行申明。global会告诉解释器,后面的变量是一个全局变量,这样在赋值是就不会创建局部变量
注:python3 新增 nonlocal 关键字,表示 该变量不是局部变量
如:

a = 1
def run():
	global a
	 a = 2
交换两个变量的值 a b 变量
方法一: 使用第三个中间变量 c 
c = a
a = b
b = c
方法二:通过 "+ -" 操作计算
a = a + b
b = a - b
a = a - b
方法三:python特有
a ,b = b , a   # a ,b  = (b , a )

注:在python列表变量执行 += 操作时实际上是执行列表变量的 extend 方法,不会噶便变量的引用

函数返回值为元组:

如果一个函数的返回类型是元组小括号可以省略
元组类型的返回值也可以用多个变量分别接受,使用多个变量接收结果时,变量个数和元组个数应一致。
如:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值