吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1906|回复: 8
收起左侧

[求助] python类、属性、方法

[复制链接]
wanwanxiang 发表于 2020-6-9 09:19
各位大佬,这题咋做啊问题:定义一个花的基类,包含2个属性和至少一个方法,再定义玫瑰花和月季花两个派生子类,在派生类中,对基类的方法进行改写,最后分别创建3支玫瑰和5支月季花分别送经8个同学。

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

zldtb19931116 发表于 2020-6-9 09:34
没有c币我很难帮你做事啊
xinyuguy 发表于 2020-6-9 09:38
这个问题  太难了    我 实在是 不会。。。。。。。。。。。好难 好难 。。。你按一下 alt + f4  试试
楼主你好萌 发表于 2020-6-9 09:39
老狗丶 发表于 2020-6-9 10:06
建议你发悬赏区,有钱就有人帮你解决。
xxoopp 发表于 2020-6-9 10:18
本帖最后由 xxoopp 于 2020-6-9 11:14 编辑

'''
定义一个花的基类,包含2个属性和至少一个方法,再定义玫瑰花和月季花两个派生子类,
在派生类中,对基类的方法进行改写,最后分别创建3支玫瑰和5支月季花分别送经8个同学。
'''


class BaseFlower(object):
    param1 = '第一个类属性'
    param2 = '第二个类属性'

    def __init__(self, name):
        self.name = '这是第' + str(name) + '朵花'

    def flower_name(self):
        return self.name

    def printf(self):  # 方法
        print(f'这是{self.name}')


class China_Rose(BaseFlower):
    def __init__(self, name):
        self.name = '这是第' + str(name) + '朵月季花'

    def printf(self):
        print(f'这是玫瑰花')


class Rose(BaseFlower):
    def __init__(self, name):
        self.name = '这是第' + str(name) + '朵玫瑰花'

    def printf(self):
        print(f'这是月季花')


class student(object):
    def __init__(self, name,flower):
        self.name = name
        self.flowser = flower

    def whoami(self):
        print(f'我是{self.name}我有{self.flowser.flower_name()}')


names = ['alex', 'john', 'lucifa', 'bob', 'tom', 'dan', 'yates', 'jack']

students={}
for i in range(1,9):
    rose=Rose(i) if i <4 else China_Rose(i)
    name=names[i-1]
    students[f'{name}']=student(name, rose)

for i in range(8):
    students[f'{names}'].whoami()
lilips 发表于 2020-6-9 10:19
本帖最后由 lilips 于 2020-6-9 10:20 编辑

上课不听讲哈~~这么简单
pzx521521 发表于 2020-6-9 10:51
[Python] 纯文本查看 复制代码
class Flower:
    name = 'flower'
    picture = ''

    def get_descript(self):
        return self.name + self.picture


class Flower_test(Flower):
    def get_descript(self):
        a = 'test!'
        a += super().get_descript()
        return a


class Rose(Flower):
    def get_descript(self):
        return 'roseeeee!'


class Rosa(Flower):
    def get_descript(self):
        return 'rosaaaaa!'


class Student:
    def __init__(self, flower):
        self.flower = flower


if __name__ == '__main__':
    for i in range(10):
        if i < 3:
            flower = Rose()
        else:
            flower = Rosa()
        student = Student(flower)
        print(student.flower.get_descript())
XAWAN 发表于 2020-6-9 10:57
class Flower():#花基类
        def __init__(self):
                self.color=None
                self.size=None
                self.set_color_size()
        def set_color_size(self):
                self.color=0x000000
                self.size=1

class Rugosa(Flower):#玫瑰
        def __init__(self):
                super().__init__()

        def set_color_size(self):
                self.color=0xFF0000
                self.size=2

class Rose(Flower):#月季
        def __init__(self):
                super().__init__()

        def set_color_size(self):
                self.color=0xFF0000
                self.size=2

if __name__ == '__main__':
        student1=Rugosa()
        student2=Rugosa()
        student3=Rugosa()
        student4=Rose()
        student5=Rose()
        student6=Rose()
        student7=Rose()
        student8=Rose()

txt写的,没调试过
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 15:48

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表