人生与戏

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

- 每个对象中都保存了三个数据:
  id(标识)
  type(类型)
  value(值)

- 列表就是一个可变对象
  a = [1,2,3]

- a[0] = 10 (改对象)
  - 这个操作是在通过变量去修改对象的值
  - 这种操作不会改变变量所指向的对象
  - 当我们去修改对象时,如果有其他变量也指向了该对象,则修改也会在其他的变量

# # 可变对象
a = [1,2,3]
print('修改前:', a , id(a))

# # 通过索引修改列表   改变值
a[0] = 10
print('修改后:', a , id(a))

# # 为变量重新赋值     改变id和值
a = [4,5,6]
print('修改后:', a , id(a))

print('\n\n')

a = [1,2,3]
b = a
b[0] = 10
b = [10,2,3]
print("a",a,id(a))
print("b",b,id(b))

print('\n\n')

# == !=  is is not
# == != 比较的是对象的值是否相等 
# is is not 比较的是对象的id是否相等(比较两个对象是否是同一个对象)

a = [1,2,3]
b = [1,2,3]
print(a,b)
print(id(a),id(b))

print('\n\n')

print(a == b) # a和b的值相等,使用==会返回True
print(a is b) # a和b不是同一个对象,内存地址不同,使用is会返回False

 

posted on 2019-07-14 21:13  人生与戏  阅读(351)  评论(0编辑  收藏  举报