zoukankan      html  css  js  c++  java
  • 不可变的是什么?

    1.简单地说...

    其值可以更改的对象称为可变对象。
    价值可以改变的对象被认为是可变的。

    无法更改其值的对象称为不可变的。
    其值不可更改的对象称为不可变的。

    3.1。
    对象,值和类型-Python语言参考

    不可变
    的具有固定值的对象。不可变的对象包括数字,字符串和元组。这些对象不能更改值。 如果要记住另一个值,则必须创建一个新对象。在需要固定哈希值的情况下,不可变对象起着重要作用。字典键就是一个例子。

    2、可变对象

    例如,可变是由列表类型,字典类型和类定义语句定义的类。

    lass Person:
        def __init__(self, name):
            self.name = name
    
    person = Person('yaruo')
    person.name
    
    # 已修改 -> mutable
    person.name = 'yarumi' 
    person.name  # 'yarumi'

    >>> # 已修改 -> mutable
    ... person.name = 'yarumi' 
    >>> person.name  # 'yarumi'
    'yarumi'
    >>> 
     

    清单类型

    lst = [1, 2, 3]
    
    # 已修改 -> mutable
    lst[2] = 4
    lst  # [1, 2, 4]

    >>> # 已修改 -> mutable
    ... lst[2] = 4
    >>> lst  # [1, 2, 4]
    [1, 2, 4]
    >>> 

    不变的对象

    例如,int,str,bool和tuple实例是不可变的。a = 1

    # 1 真
    a.real  # 1
    
    # 1 假
    a.imag  # 0
    
    # 不能变更 -> immutable
    i.imag = 100  # AttributeError
    
    >>> #不能变更 -> immutable
    ... i.imag = 100  # AttributeError
    Traceback (most recent call last):
      File "<stdin>", line 2, in <module>
    NameError: name 'i' is not defined
    >>>


    AttributeError如果

    属性引用或属性分配失败,则调度 (如果对象根本不支持属性引用或属性分配,则引发TypeError)。

  • 相关阅读:
    HOG特征提取+python+opencv
    统计模型计算量~pytorch
    CycleGAN训练~训练图像进行拼接
    缺陷检测~分类网络
    缺陷检测~分类网络
    缺陷检测~检测网络
    pytorch中的fc和fc逆操作
    pytorch中的view和view逆操作
    传统的图像特征提取
    TensorFlow安装+入门操作
  • 原文地址:https://www.cnblogs.com/Xingtxx/p/12819425.html
Copyright © 2011-2022 走看看