美文网首页
day12-作业

day12-作业

作者: 旧时初_2e8d | 来源:发表于2018-07-31 21:49 被阅读0次

声明一个电脑类:
属性:品牌、颜色、内存大小
方法:打游戏、写代码、看视频
a.创建电脑类的对象,然后通过对象点的方式获取、修改、添加和删除它的属性
b.通过attr相关方法去获取、修改、添加和删除它的属性

class Computer:
    """电脑类"""
    def __init__(self,brand,color,size):
        self.brand = brand
        self.color = color
        self.size = size
    @staticmethod
    def play_games(game):
        print('打%s游戏'%game)

    @staticmethod
    def write_code(type):
        print('写%s代码'%type)
    @staticmethod
    def watch_videos(video):
        print('看%s电影'%video)

#创建一个电脑对象
comp1 = Computer('戴尔','black','4G')
#获取属性
print(comp1.brand,comp1.color,comp1.size)
#通过getattr获取属性
print(getattr(comp1,'brand'))
#修改属性
comp1.brand = 'mac'
print(comp1.brand)
#通过setattr修改属性
setattr(comp1,'color','red')
print(comp1.color)
#添加属性,显示器大小
comp1.monitor =  '14寸'
print(comp1.monitor)
#通过 setattr添加属性
setattr(comp1,'monitor','14寸')
print(comp1.monitor)
删除属性
del comp1.brand
print(comp1.brand)
通过delattr删除属性
delattr(comp1,'brand')
print(comp1.brand)

结果

戴尔 black 4G
戴尔
mac
red
14寸
14寸

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

class Dog:
    def __init__(self,name,color,age):
        self.g_name = name
        self.color = color
        self.g_age = age
    def call(self):
        print('%s:叫唤'%(self.g_name))


class Person:
    def __init__(self,name,age=18):
        self.name = name
        self.age = age
        #用None来表示对象的零值
        self.dog = None
    def walk_dog(self):
        if self.dog == None:
            print('遛狗')
            return

       
        print('%s在遛%s'%(self.name,self.dog.g_name))

people = Person('小明',18)
people.dog = Dog('大黄','yellow',2)
print(people.walk_dog())

结果

小明在遛大黄

声明一个矩形类:
属性:长、宽
方法:计算周长和面积
a.创建不同的矩形,并且打印其周长和面积

class Rectangle:
    def __init__(self,length,width):
        self.length = length
        self.width = width
    def  perimeter(self):
        #计算周长
        return (self.length+self.width)*2
        # print('这个矩形周长为%s'%(result))
    def area(self):
        #计算面积
       return self.length*self.width
        # print('这个矩形面积为%s'%(result))
rec1 = Rectangle(20,30)
print(rec1.perimeter())
print(rec1.area())

rec2 = Rectangle(50,78)
print(rec2.perimeter())
print(rec2.area())

结果

100
600
256
3900

4.

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

from  random import randint
# if __name__ == '__main__':
class Student:
    def __init__(self, name, age):
        self.name = name
        self.age = age
        self.number = 'pu1805'+str(randint(0,50))

    def answer(self):
        print('%s,到'%self.name)
    def show_message(self):
        print('name:%s age:%s number:%s' % (self.name, self.age, self.number))


class Class:
    def __init__(self,name):
        self.name = name
        self.students = []
    def append_student(self,student):
        #添加学生
        self.students.append(student)
    def del_student(self,name):
        for student in self.students[:]:
         if student.name == name:
             self.students.remove(student)
    def call_names(self):
        for student in self.students:
            #点名
            print(student.name)
            #答到
            student.answer()
    
cla1 = Class('py1805')
stu1 = Student('张三',18)
stu2 = Student('李四', 17)
stu3 = Student('王五', 16)
cla1.append_student(stu1)
cla1.append_student(stu2)
cla1.append_student(stu3)
cla1.call_names()

结果

张三
张三,到
李四
李四,到
王五
王五,到

写一个类,封装所有和数学运算相关的功能(包含常用功能和常用值,例如:pi, e等)

class Math:
    pi = 3.1415926
    e = 2.718
    @staticmethod
    def add(a,b):
       return a+b

    @staticmethod
    def sub(a,b):
        #减法
        return a-b

    @staticmethod
    def mul(a,b):
        #加法
        return a*b

    @staticmethod
    def div(a,b):
        #除法
        return a/b

    @staticmethod
    def rem(a,b):
        #取余
       return a%b

    @staticmethod
    def pic(a,b):
        # 取整
        return a//b
print(Math.add(1,2))
print(Math.div(2,6))

结果

3
0.3333333333333333

相关文章

  • day12-作业

    实现鼠标点击屏幕产生小球,小球自动移动,与屏幕碰撞会反弹。小球之间碰撞,会随机吃掉。 定义部分颜色的模块

  • day12-作业

    登陆和注册功能 代码如下 运行结果可自行检测

  • day12-作业

    声明一个电脑类:属性:品牌、颜色、内存大小方法:打游戏、写代码、看视频a.创建电脑类的对象,然后通过对象点的方式获...

  • Day12-作业

    5.写一个类,封装所有和数学运算相关的功能 5-160.6666666666666666208 redblue美国...

  • day12-作业

    1.声明一个电脑类:属性:品牌、颜色、内存大小方法:打游戏、写代码、看视频a.创建电脑类的对象,然后通过对象点的方...

  • day12-作业

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

  • Day12-作业

    学生管理系统 主界面 fileManager文件

  • day12-周末作业

    简单的学生管理系统 代码示例 运行结果大家自行测试!

  • 21天E战到底学习笔记Day12

    21天E战到底学习笔记Day12-逻辑函数(If、And、Or) 今天是E战到底特训营的第十二天了,很快特训营...

  • day12-重定向-笔记

    Day12-重定向 导读 昨日回顾1.特殊权限SUID2.特殊权限SGID3.特殊权限SBIT4.特殊属性5.默认...

网友评论

      本文标题:day12-作业

      本文链接:https://www.haomeiwen.com/subject/phjkvftx.html