1 '''
2 函数的嵌套调用应用
3 '''
4 # def print_line():
5 # print("="*50)
6 # def print_5_line():
7 # i = 0
8 # while i<5:
9 # print_line()
10 # i+=1
11 # print_5_line()
12
13 '''
14 打印三个数的平均值
15 '''
16 # def sum_3_nums(a,b,c):#形参
17 # result = a+b+c
18 # return result
19 # def average_3_nums(a1,a2,a3):#形参
20 # result = sum_3_nums(a1,a2,a3)#实参
21 # result = result/3#result/=3
22 # print("平均值是:%d"%result)
23 # # 1.获取3个数值
24 # num1 = int(input("第1个值:"))
25 # num2 = int(input("第2个值:"))
26 # num3 = int(input("第3个值:"))
27 # average_3_nums(num1,num2,num3)
28
29 '''
30 全局变量和局部变量
31 (列表和字典可以当做全局变量使用,不需要定义global)
32 如果修改全局变量则需要 gloabl 变量名 进行声明
33 '''
34 # a =100
35 # def test1():
36 # global a
37 # print("修改前a=%d"%a)
38 # a =200
39 # print("修改后a=%d"%a)
40 # def test2():
41 # print("test3 ===a=%d"%a)
42 # test1()
43 # test2()
44 '''
45 1.缺省参数:
46 调用函数时,缺省参数的值如果没有传入,则被认为是默认值。
47 '''
48 # def test(a,b=22,c=1): #缺省参数
49 # result = a+b+c
50 # print("result=%d"%result)
51 # print(a)
52 # print(b)
53 # print(c)
54 # test(11)
55 # test(11,c=11) #想给谁传,参数名字改成谁 命名参数
56 '''
57 2.不定长参数
58 超出传入参数的部分,全都给*args,可以保存多个值,要放在形参的最后的位置
59 '''
60 def test(a,b=22,*args,**kwargs):
61 # * 元组 **字典
62 # 缺省参数 *告诉解释器保留传入多余参数 **告诉解释器可传入多余参数名
63 print(a)
64 print(b)
65 print(args)
66 print(kwargs)
67
68 # result = a+b
69 # # args为元组(括号里是数字) 所以不能和a,b直接加
70 # for num in args:
71 # result+=num
72 # print("result=%d"%result)
73 A = (44,55,66)
74 B = {"name":"laowang","age":"18"}
75 test(11,22,*A,**B)
76 '''
77 引用: 就好比一个地名+一个地方 地名随便起.地方只有一个 所以就是引用
78 '''
79 a = 100
80 b = a
81 print(id(a),id(b)) #地址一样