1.1 Python 函数

一,变量的作用范围

①不变量:数值,字符串,元组

a=666
b="abc"
c=(1,2)
def change(x,y,z):
	x=777
	y="as"
	z=(4,5)
	print("函数内",x,y,z)
	
change(a,b,c)
 print('函数外'a,b,c)

运行结果

函数内 777 as (4, 5)
函数外 666 abc (1, 2)

注意
a.函数改不了这几个值

②变量:列表,字典,集合

a=[1,2]
b={"12001":[66,77]}
c={2,4,6}

def change2(x,y,z):
    x.append(3)
    y["12002"]=[88,99]
    z.add(8)
    print("函数内",x,y,z)
    
change2(a,b,c)
change2(a,b,c)
print(a,b,c)

运行结果

函数内 [1, 2, 3] {'12001': [66, 77], '12002': [88, 99]} {8, 2, 4, 6}
函数内 [1, 2, 3, 3] {'12001': [66, 77], '12002': [88, 99]} {8, 2, 4, 6}
[1, 2, 3, 3] {'12001': [66, 77], '12002': [88, 99]} {8, 2, 4, 6}

二,全局与局部

①凡是在函数外定义的变量都叫做全局变量

ga=1
gb="a"
gc=[1,2,3]
def test1():
    print(ga,gb)
    gc.append(4)
    print(gc)
    
test1()

print(gc)
def test2():
    #函数内定义的变量叫局部变量,只在函数内有效
    ga=2
    gb="b"
    print(ga,gb)
    gc=(1,2)
    print(gc)
test2()
print(ga,gb)
print(gc)

运行结果
1 a
[1, 2, 3, 4]
[1, 2, 3, 4]
2 b
(1, 2)
1 a
[1, 2, 3, 4]

注意
a.在函数外定义的变量都是全局变量,可以直接在函数内调用
b.凡是在函数内定义的变量叫局部变量,只在函数内有效
c.若同时定义了局部变量和全局变量,局部变量优先级高.

三,函数内修改全局变量需要声明

ga=1
print(ga)
def test3():
    global ga
    ga=999
    
test3()
print(ga)

1
999

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值