目录


1、创建Person 类,该类对象具有 属性name、weight、height、sex,要求如下:(1)对name属性进行封装,但外界仍然可以访问name以及设置name(2)有一个方法属性bmi,可以获取一个人的bmi,bmi只读不可写,bmi计算规则为:bmi=weight/(height*height)(体重单位:千克;身高单位:米)

2、创建员工类Employee,属性有name、ability、age;方法有DoWork(),该方法执行一次,该员工的能力值-5,能力值的计算公式为:ability=100-age;创建str方法,打印该员工的信息。

3、创建Number类,有两个私有的整型数据成员d1和d2,编写__init__方法,外部接收n1和n2,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等成员方法,分别对两个成员变量执行加、减、乘、除的运算。创建Number类的对象,调用各个方法,并显示计算结果。

 4、创建一个学生类,有属性 id,name,age,sex,私有属性addr,方法get_addr(),set_addr()返回以及设置学生的属性addr,方法msg()显示学生的所有信息。

5、创建⼀个电脑类Computer, 属性有:品牌(brand)、颜⾊(clr)、内存⼤小(mem) ,方法有:打游戏(play_game())、写代码(write_code())、看视频(watch_tv()),调用各方法时分别显示 :“打游戏”,“写代码”,“看电视”。


1、创建Person 类,该类对象具有 属性name、weight、height、sex,要求如下:
(1)对name属性进行封装,但外界仍然可以访问name以及设置name
(2)有一个方法属性bmi,可以获取一个人的bmi,bmi只读不可写,bmi计算规则为:bmi=weight/(height*height)(体重单位:千克;身高单位:米)

class Person:
    __slots__ = ('name', '__weight', '__height', '__sex')

    def __init__(self, name, weight, height, sex):
        self.name = name
        self.__weight = weight
        self.__height = height
        self.__sex = sex

    def getName(self):
        return self.name

    def setName(self, name):
        self.name = name

    def bmi(self):
        bim = int(self.__weight) / (int(self.__height) * int(self.__height))
        return bim


person = Person('王', 90, 100, '男')
person.name = "李想"
print(f'{person.name},{person.bmi()}kg/m')

2、创建员工类Employee,属性有name、ability、age;方法有DoWork(),该方法执行一次,该员工的能力值-5,能力值的计算公式为:ability=100-age;创建str方法,打印该员工的信息。
 

class Employee:
    def __init__(self, name, age):
        self.name = name
        self.age = age
        self.ability = 100 - age

    def DoWork(self):
        self.ability -= 5

    def __str__(self):
        print("姓名:{},年龄:{},能力值:{}".format(self.name, self.age, self.ability))


employee = Employee("wang", 9)
employee.DoWork()
employee.__str__()

3、创建Number类,有两个私有的整型数据成员d1和d2,编写__init__方法,外部接收n1和n2,再为该类定义加(addition)、减(subtration)、乘(multiplication)、除(division)等成员方法,分别对两个成员变量执行加、减、乘、除的运算。创建Number类的对象,调用各个方法,并显示计算结果。
 

class Number:
    def __init__(self,n1,n2):
        self.__d1=n1
        self.__d2=n2

    @property
    def d1(self):
        return self.__d1
    @d1.setter
    def d1(self,n1):
        self.__d1=n1
    @property
    def d2(self):
        return self.__d2
    @d2.setter
    def d2(self,n2):
        self.__d2=n2

    def addition(self):
        return float(self.__d1+self.__d2)
    def subtration(self):
        return float(self.__d1-self.__d2)
    def multiplication(self):
        return float(self.__d1*self.__d2)
    def division(self):
        return float(self.__d1/self.__d2)


n1=Number.d1
n2=Number.d2
n1=8
n2=2
number=Number(n1,n2)
print('除法的结果为:{}'.format(number.division()))
print('减法的结果为:{}'.format(number.subtration()))
print('乘法的结果为:{}'.format(number.multiplication()))
print('加法的结果为:{}'.format(number.addition()))

 4、创建一个学生类,有属性 id,name,age,sex,私有属性addr,方法get_addr(),set_addr()返回以及设置学生的属性addr,方法msg()显示学生的所有信息。

class Student:
    def __init__(self,id,name,age,sex,addr):
        self.id=id
        self.name=name
        self.age=age
        self.sex=sex
        self.__addr=addr

    def get_addr(self):
        return self.__addr
    def set_addr(self,addr):
        self.__addr=addr
    def msg(self):
        return ("学号:{},姓名:{},年龄:{},性别:{},地址:{}".format(self.id,self.name,self.age,self.sex,self.__addr))


student=Student(101648,'王莽',18,"男","重庆")
student.set_addr("北京")
print(student.msg())

5、创建⼀个电脑类Computer, 属性有:品牌(brand)、颜⾊(clr)、内存⼤小(mem) ,方法有:打游戏(play_game())、写代码(write_code())、看视频(watch_tv()),调用各方法时分别显示 :“打游戏”,“写代码”,“看电视”。
 

class Computer:
    __slots__ = ("brand","clr","mem")
    def __init__(self,brand,clr,mem):
        self.brand=brand
        self.clr=clr
        self.mem=mem

    def play_game(self):
        return "打游戏"
    def write_code(self):
        return "写代码"
    def watch_tv(self):
        return "看电视"
    def __str__(self):
        return ("电脑品牌为:{},颜色为:{},内存大小为:{}".format(self.brand,self.clr,self.mem))


computer=Computer("外星人", "黑色", "1TB")
print(computer.__str__())
print(computer.play_game())
print(computer.watch_tv())
print(computer.write_code())

检查作业申请...