11.了解引用
在py中,值是利用引用进行传递的
我们可以利用id()来判断两个变量是否是同一个值的引用,id就是内存地址的表示
对于对应的引用,可以分为分为可变的不可变的类型
比如int就是不可变的类型
我们重新赋值的时候,就已经生成一个新的int了
对于列表就是可变的,我们可以利用一个引用来对其进行传递引用
我们说一下哪些是可变的,哪些是不可变的
可变的包含
列表
字典
集合
不可变的包含
整型
浮点型
字符串型
元组
小测试:
1.查看下面的代码输出
num = 10def abnum(): num = 20 |
这段代码后如果打印num,获取到的结果还是10
2.要求实现一段代码:
声明一个函数num,并且在调用函数的时候,不管输入多少个非关键字参数,函数都可以运行,且在函数内部还要把每个参数输出到屏幕上
def numtest(*args):for i in args:print(i) |
对于一个函数num,当调用nun(1,2,a=3,b=4)和调用num(3,4,5,6,a=1)以及num(a=1,b=2)的时候都可以正常运行,并且可以对元组以及字典类型进行遍历输出,对字典类型进行输出字典的键值对(形式为:key:a,value:1),
请写出这个函数并完成调用。
def arg_and_kwargs(*args, **kwarags):for i in args:print(i)for j,k in kwarags.items():print(str.format(“{}-{}”,j,k)) |