• python可变对象


    - 每个对象中都保存了三个数据:
      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('
    
    ')
    
    a = [1,2,3]
    b = a
    b[0] = 10
    b = [10,2,3]
    print("a",a,id(a))
    print("b",b,id(b))
    
    print('
    
    ')
    
    # == !=  is is not
    # == != 比较的是对象的值是否相等 
    # is is not 比较的是对象的id是否相等(比较两个对象是否是同一个对象)
    
    a = [1,2,3]
    b = [1,2,3]
    print(a,b)
    print(id(a),id(b))
    
    print('
    
    ')
    
    print(a == b) # a和b的值相等,使用==会返回True
    print(a is b) # a和b不是同一个对象,内存地址不同,使用is会返回False
  • 相关阅读:
    在dotnet下用c#编写下载器(转载)
    hdu 1176
    hdu 1231(最大连续子序列)
    hdu 2571
    hdu 1087(最大递增子序列)
    hdu 1506(dp)
    hdu 1069
    hdu 2084(数塔经典dp)
    hdu 2602(01背包)
    hdu 1505
  • 原文地址:https://www.cnblogs.com/FlyingLiao/p/11185748.html
Copyright © 2020-2023  润新知