day14

1.声明⼀个电脑类: 属性:品牌、颜色、内存大小 方法:打游戏、写代码、看视频

a.创建电脑类的对象,然后通过对象点的方式获取、修改、添加和删除它的属性
b.通过attr相关方法去获取、修改、添加和删除它的属性

class Computer:
    def __init__(self,brand1,color1,ram1):
        self.brand=brand1
        self.color=color1
        self.ram=ram1
    def play_game(self):
        print('打游戏')
    def coding(self):
        print('写代码')
    def watch_video(self):
        print('看视频')

cp1 = Computer('苹果','银色','256')
print(cp1.brand)
print(getattr(cp1,'brand1','msi'))

cp1.price = 10000
setattr(cp1,'price1',8000)
print(cp1.price1)

delattr(cp1,'color')
#print(cp1.color)

2.声明⼀个人的类和狗的类:

狗的属性:名字、颜色、年年龄
狗的方法:叫唤
人的属性:名字、年龄、狗
人的方法:遛狗
a.创建人的对象小明,让他拥有⼀条狗大黄,然后让小明去遛大黄

class Dog:
    def __init__(self,name,color,age):
        self.name=name
        self.color=color
        self.age=age
    def shout(self):
        print('汪汪汪')

class Person:
    def __init__(self,name:str,age:int):
        self.name=name
        self.age=age
        self.dog=none
    def liu_gou(self):
          if self.dog:
            print('%s在遛%s'%(self.name,self.dog.name))
          else:
              print('没有狗’)
p1=Person('小明',18)
p1.dog=Dog('旺财','白色','2')
p1.liu_gou()

3.声明一个圆类,自己确定有哪些属性和方法

class Rect:
    def __init__(self, length, width):
        self.length = length
        self.width = width

    def perimeter(self):
        return (self.length + self.width)*2

    def area(self):
        return self.length * self.width


rect1 = Rect(3, 2)
print(rect1.perimeter(), rect1.area())

rect2 = Rect(4, 5)
print(rect2.perimeter(), rect2.area())

4.创建一个学生类:

属性:姓名,年龄,学号
方法:答到,展示学生信息
创建⼀个班级类:
属性:学生,班级名
方法:添加学生,删除学生,点名, 求班上学生的平均年龄

class Student:
    def __init__(self, name, age=18):
        self.name = name
        self.age = age
        self.stu_id = '001'

    def reply(self):
        print('%s,到!' % self.name)

    def show(self):
        print('姓名:%s,年龄: %d,学号:%s' % (self.name, self.age, self.stu_id))


class Class:
    def __init__(self, name: str):
        self.students = []
        self.name = name
        self.id_creater = ('stu'+str(x).zfill(3) for x in range(1, 101))

    def add_student(self):
        # 输入信息
        name = input('姓名:')
        age = int(input('年龄:'))
        stu_id = next(self.id_creater)

        # 创建学生
        stu = Student(name, age)
        stu.stu_id = stu_id

        self.students.append(stu)

    def del_student(self, name):
        flag = False
        for stu in self.students[:]:
            if stu.name == name:
                flag = True
                stu.show()
                value = input('是否删除(Y/N):')
                if value == 'Y':
                    self.students.remove(stu)

        if not flag:
            print('没有找到该学生!')

    def call_the_roll(self):
        for stu in self.students:
            print(stu.name)
            if randint(0, 1) == 1:
                # 答到
                stu.reply()


c1 = Class('py1902')

print('===========添加学生============')
for _ in range(5):
    c1.add_student()


print('===========删除学生============')
c1.del_student('小明')

print('===========点名===============')
c1.call_the_roll()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、面向对象编程编程思想:1.面向过程编程 ---> 算法,逻辑(数学逻辑)2.函数式编程 ---> 函数,模块3...
    Smr_T阅读 580评论 0 0
  • 1 1.声明⼀个电脑类: 属性:品牌、颜⾊、内存⼤小 方法:打游戏、写代码、看视频a.创建电脑类的对象,然后通过对...
    生命在于不睡觉阅读 273评论 0 0
  • 一、面向对象编辑 编程思想:1.面向过程编程 ---> 算法,逻辑(数学逻辑) 2.函数式编程 ---> 函数,...
    大漠判官1阅读 334评论 0 0
  • 1.声明⼀个电脑类: 属性:品牌、颜⾊、内存⼤小 方法:打游戏、写代码、看视频a.创建电脑类的对象,然后通过对象点...
    筱哥家的小跟班阅读 320评论 0 0
  • 验证登录 URL /proGuard/user/loginValid 请求方式 POST 请求参数 请求示例 返回...
    my_abstract阅读 419评论 0 0

友情链接更多精彩内容