开发者学堂课程【Python 语言基础 2:列表、元组、字典、集合:可变对象】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/600/detail/8713
可变对象
每个对象中都保存了三个数据∶
1) id( 标识)
2) type( 类型)
3) value (值)
列表就是一个可变对象
例子:
a = [1, 2, 3]
每个对象中都保存了三个数据∶
1) id( 标识)
2) type (类型)
3) value ( 值)
列表就是一个可变对象
例子:
a = [1, 2, 3]
a[0] = 10 (改对象)
u 这个操作是在通过变量去修改对象的值
u 这种操作不会改变变量所指向的对象
u 当我们去修改对象时,如果有其他变量也指向了该
u 对象,则修改也会在其他的变量中体现
a = [4, 5, 6] (改变量)
u 这个操作是在给变量重新赋值
u 这种操作会改变变量所指向的对象
u 为一个变量重新赋值时,不会影响其他的变量
一般只有在为变量赋值时才是修改变量,其余的都是修改对象。
代码:
# 可变对象
a = [1,2,3]
print('修改前:', a , id(a))
#通过索引修改列表
a[] = 10
print('修改后:', a , id(a) )
#为变量重新赋值
a =[4, 5, 6]
print('修改后∶', a , id(a) )
输出结果为:
修改前:[1,2,3] 79243464
修改后:[10,2,3] 79243464
修改后:[4,5,6] 79243504 //一个新的对象
代码:
a = [1, 2, 3]
b = a
b [0] = 10
print ( "a", a, id(a) )
print ( "b", b, id( b))
输出结果为:
a [10,2,3] 78981326
b [10,2,3] 78981320
代码:
a = [1, 2, 3]
b = a
b = [10, 2, 3]
print ( "a", a, id( a) )
print ( "b", b, id( b))
输出结果为:
a [1, 2, 3] 42674376
b [ 10, 2, 3] 42674416