zoukankan      html  css  js  c++  java
  • 类的命名空间

    属性

    类里面可以定义两种属性:静态属性和动态属性。

    通过实例来看下:

    class Course:
        language = '中文'#静态属性
        def __init__(self,teach,course_name,period,price):
            self.teach = teach
            self.course_name = course_name
            self.period = period
            self.price = price
    Course.language = '英语'#修改静态属性
    print(Course.language)
    python = Course('套你大象','python','9天',1000000)
    print(python.language)#类中的静态变量可以被对象和类调用。

    当我们在创建一个类的时候,我们是实例化对象的时候。优先级是先从对象本地开始找变量的,如果在对象中找不到,则会在对应的类中去找。所以无论是使用类或者对象都可以找到静态对象。

    但是当我们使用类去操作对象时就不行了,因为他们之间时单项的。

    注意:对于不可变的数据类型来说,类变量最好用类来操作。因为如果你使用对象对静态属性进行修改之后,你将再也调不到类里面的对于的静态属性了。

    对于可变数据类型来说,例如列表。

    对列表中的值进行修改不会改变列表的内存地址,只会改变内部元素的内存地址。不会影响从对象到类的指针。所以使用类和对象去修改是共享的,赋值是独立的。赋值就是将language这个属性进行重新赋值,直接改变从对象到类的指向地址。

  • 相关阅读:
    python input and output and cpickle
    NS3中文教程:3下载及编译软件
    Wireshark Display fliters
    Python 中的几种copy用法
    python func for shell operation
    关于AX的临时表
    关于AX中的Query是如何查询记录
    POJ 2996, Help Me with the Game
    POJ 1328, Radar Installation
    POJ 3295, Tautology
  • 原文地址:https://www.cnblogs.com/zly9527/p/11538032.html
Copyright © 2011-2022 走看看