# 对象

  • Python是一门面向对象的语言
  • 一切皆对象!
  • 程序运行当中,所有的数据都是存储到内存当中然后再运行的!
  • 对象就是内存中专门用来存储指定数据的一块区域
  • 对象实际上就是一个容器,专门用来存储数据
  • 像我们之前学习的数值、字符串、布尔值、None都是对象

# 对象的结构

  • 每个对象中都要保存三种数据
    • id(标识)
      • id用来标识对象的唯一性,每一个对象都有唯一的id
      • 对象的id就相当于人的身份证号一样
      • 可以通过id()函数来查看对象的id
      • id是由解析器生成的,在CPython中,id就是对象的内存地址
      • 对象一旦创建,则它的id永远不能再改变
    • type(类型)
      • 类型用来标识当前对象所属的类型
      • 比如:int str float bool 。。。
      • 类型决定了对象有哪些功能
      • 通过type()函数来查看对象的类型
      • Python是一门强类型的语言,对象一旦创建类型便不能修改
    • value(值)
      • 值就是对象中存储的具体的数据
      • 对于有些对象值是可以改变的
      • 对象分成两大类,可变对象 不可变对象 可变对象的值可以改变 不可变对象的值不能改变,之前学习的对象都是不可变对象

# 可变对象

  • 每个对象中都保存了三个数据:

    • id(标识)
    • type(类型)
    • value(值)
  • 列表就是一个可变对象

    • a = [1,2,3]
  • a[0] = 10 (改对象)

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

    • 这个操作是在给变量重新赋值
    • 这种操作会改变变量所指向的对象
    • 为一个变量重新赋值时,不会影响其他的变量
  • 一般只有在为变量赋值时才是修改变量,其余的都是修改对象

更新时间: 2021-05-05 21:07:37