函数的拆包

拆包:就是将对应的值取出来

def func(a, b, c):
print("a:", a)
print("b:", b)
print("c", c)


#调用函数的时候,传递参数的时候可以使用*对列表和元祖进行拆包
li = [11, 22, 33]
func(*li)

print("...........................")
#调用函数的时候,传递参数的时候可以使用**对字典进行拆包
dic = {"a": 111, "b": 222, "c": 444}
func(**dic)

a, b, c = (11, 22, 33)

结果:

python3基础篇04(函数2函数的拆包与作用域)_全局变量

 

函数的作用域


全局变量:直接定义在py文件中的变量,叫全局变量,在该文件中任何地方都可以使用 局部变量:在函数内部定义的变量,叫做局部变量,只能在该函数内部使用,函数外部无法使用


 

#定义一个全局变量
name = "seak"
def func():
# 定义一个局部变量
a = 100
print(a)
print(name)

func() #调用函数中的两个打印
print("*"*10)
print(name)#打印全局变量的name

结果:

python3基础篇04(函数2函数的拆包与作用域)_函数的作用域_02

 

#变量的查找过程:由内到外(先找自身的,没有再去外面找)

aa = 10

def func():
aa = 100
print(aa)

func()#由内到外(先找自身的,没有再去外面找)会先找到100,找不到才回去找外面的10

结果:

python3基础篇04(函数2函数的拆包与作用域)_拆包_03

 

global修改全局变量

#如何在函数内部去修改全局变量?
#global:在函数内部声明全局变量

aa = 10
def func():
global aa, cc
aa = aa + 1
print(aa)
cc = 99
print(aa)
aa = 100

func()

print("*"*10)
print(aa)
print(cc)

结果:

python3基础篇04(函数2函数的拆包与作用域)_拆包_04