day14_homework

import random

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

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

class Computer:
    """说明文档:电脑类"""
    # 属性
    def __init__(self, brand, color, cpuSize='128G'):
        self.brand = brand
        self.color = color
        self.cpuSize = cpuSize
    
    # 方法
    def playGame(self):
        print('玩游戏')
    
    def knockCode(self):
        print('敲代码')
    
    def watchTV(self):
        print('看视频')

对象点的方式操作对象属性

computer1 = Computer('联想', '白色')
print('cpuSize:', computer1.cpuSize)
computer1.color = '黑色'
print('color:', computer1.color)
computer1.price = 5000
print('price:', computer1.price)
try:
    del computer1.price
    print('price:', computer1.price)
except AttributeError:
    print('对象无此属性')

attr方法操作对象属性

computer2 = Computer('华硕', '黑色')
print('brand', getattr(computer2, 'brand'))
setattr(computer2, 'cpuSize', '256G')
print('cpuSize', getattr(computer2, 'cpuSize'))
setattr(computer2, 'price', 6000)
print('prie', getattr(computer2, 'price'))
try:
    delattr(computer2, 'price')
    print('price:', computer1.price)
except AttributeError:
    print('对象无此属性')

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

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

class Dog:
    """文档说明:狗类"""
    # 属性
    def __init__(self, name, color='黄色', age=1):
        self.name = name
        self.color = color
        self.age = age
    
    # 方法
    def speak(self):
        print('汪汪汪...')

class Person:
    """文档说明:人类"""
    # 属性
    def __init__(self, name, dog, age=18):
        self.name = name
        self.dog = dog
        self.age = age
    
    # 方法
    def walkTheDog(self):
        print('%s正在遛他的狗%s' % (self.name, self.dog))

dog1 = Dog('大黄')
person1 = Person('小明', dog1.name)
person1.walkTheDog()

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

class Circle:
    """文档说明:圆类"""
    # 属性
    def __init__(self, radius):
        self.radius = radius
    
    # 方法
    def side(self):
        """
        求圆的周长
        :return: 圆的周长
        """
        result = 2*3.14*self.radius
        return result
    
    def area(self):
        """
        求圆的面积
        :return: 圆的面积
        """
        result = 3.14*self.radius*self.radius
        return result

4.创建一个学生类:

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

class Student:
    """文档说明:学生类"""
    # 属性
    def __init__(self, name, age, id):
        self.name = name
        self.age = age
        self.id = id
        self.state = random.randint(0, 1)
    
    # 方法
    def answer(self):
        if self.state == 1:
            print(self.name+'到')
        else:
            print(self.name+'没到')
    
    def showMessage(self):
        print(self.name, self.age, self.id)

class Class:
    """文档说明:班级类"""
    # 属性
    def __init__(self, students: list, name):
        self.students = students
        self.name = name
    
    # 方法
    def addStu(self, student):
        self.students.append(student)
    
    def delStu(self, student):
        for index in len(self.students):
            if student == self.students[index]:
                del self.students[index]
    
    def present(self):
        index = random.randint(0, len(self.students)-1)
        return self.students[index]
    
    def avgAge(self):
        sum1 = 0
        for item in self.students:
            sum1 += item.age
        avg = sum1/len(self.students)
        return avg

student1 = Student('小明', 18, '20150901')
student2 = Student('小花', 16, '20150902')
student3 = Student('二狗', 17, '20150903')
student4 = Student('王大', 20, '20150904')
student5 = Student('毛毛', 19, '20150905')
student6 = Student('阿水', 17, '20150906')
student1.answer()
student2.showMessage()
class1 = Class([], '二年一班')
class1.addStu(student1)
class1.addStu(student2)
class1.addStu(student3)
class1.addStu(student4)
class1.addStu(student5)
class1.addStu(student6)
print('点名:', end='')
class1.present().answer()
print('平均年龄:', class1.avgAge())
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,509评论 6 504
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,806评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,875评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,441评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,488评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,365评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,190评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,062评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,500评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,706评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,834评论 1 347
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,559评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,167评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,779评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,912评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,958评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,779评论 2 354

推荐阅读更多精彩内容

  • question1.声明⼀个电脑类: 属性:品牌、颜⾊、内存⼤小 方法:打游戏、写代码、看视频 a.创建电脑类的对...
    3ae1c50960af阅读 161评论 0 0
  • 1.声明一个电脑类:属性:品牌、颜色、内存大小 方法:打游戏、写代码、看视频a.创建电脑类的对象,然后通过对象点...
    rzlong阅读 123评论 0 0
  • 1.声明⼀个电脑类: 属性:品牌、颜⾊、内存⼤小 方法:打游戏、写代码、看视频a.创建电脑类的对象,然后通过对象点...
    快请输入昵称吧阅读 171评论 0 0
  • 1.声明⼀个电脑类: 属性:品牌、颜⾊、内存⼤小 方法:打游戏、写代码、看视频 2.声明⼀个人的类和狗的类: 狗的...
    0228bb2f7b74阅读 134评论 0 0
  • 装,好像是个贬义词,就是不真诚,虚伪。人前人后不一样。有城府。 可是,有多少人不装?人在江湖,身不由己,你能不装,...
    人间四月2012阅读 193评论 0 0