开发者社区> 问答> 正文

python 类的实例方法如何调用和修改类属性

# 定义三个类,一个子类继承两个父类
class R(object):
    # 类的属性
    def __init__(self):
        self.name = '父类R'
    # 类的方法
    def Xinxi(self):
         print('学生的基本资料:名字:%s' % self.name)
class X(object):
    def __init__(self):
        self.name = '父类X'
    def Xinxi(self):
        print('学生的基本资料:名字:%s' % self.name)
class G(R,X):
    def __init__(self):
        self.name = '子类独有'
    def Xinxi(self):
        print('只需要名字:%s' % self.name)
xiaoming = G() # 子类和父类有同名的属性
xiaoming.Xinxi()# 子类和父类有同名的方法,但子类做自己独有的事情

展开
收起
游客qe5rbsqvahefm 2020-10-28 14:11:22 1052 0
1 条回答
写回答
取消 提交回答
  • 下一站是幸福

    类的属性都是存放在字典中,所以对类或实例的属性进行操作实际上就是对字典的操作。

    类的属性相关操作

    如下图:

    watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

    watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

    watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

    代码块如下:

    class Door():

    "门的类"

    address = "浙江省杭州市"

    def init(self,size,color,type):#构造函数

    "初始化门的数据"

    self.size = size

    self.color = color

    self.type = type

    def open(self):

    "门打开的方法"

    print("这个%s门打开了" %self.type)

    def off(self,time):

    "门关闭的方法"

    print("这个%s门关闭了,时间为;%s" %(self.type,time))

    #####查看类的属性#####

    print(Door.dict)

    print(Door.address)

    #####增加类的属性#####

    #增加一个生产日期(time)数据属性

    Door.time = "2018-04-25 23:55:00"

    print(Door.dict)

    print(Door.time)

    #增加一个函数属性

    def fun(seif,name):

    "谁在前门"

    print("%s在boomboom敲门了"%name)

    Door.add = fun #函数内存地址的映射

    #查看

    print(Door.dict)

    #调用类的属性

    #实例化

    door1 = Door(16, 'red', '木门')

    #实例中调用新增的数据属性

    print(door1.time)

    #实例中调用新增的函数属性

    print(door1.add('zhouzhou'))

    #####删除类的属性#####

    #删除类的生产日期(time)数据属性

    del Door.time

    print(Door.dict)

    #删除类的add函数属性

    del Door.add

    print(Door.dict)

    实例化

    door2 = Door(16, 'red', '木门')

    2021-04-02 22:01:55
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载