鱼C论坛

 找回密码
 立即注册
楼主: 小甲鱼

[课后作业] 第063讲:类和对象(VI)| 课后测试题及答案

  [复制链接]
发表于 2023-6-20 18:20:18 | 显示全部楼层
零基础入门学习Python封面
《零基础入门学习Python》
(最新版)
小甲鱼 著
立即购买
daan
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-6-17 07:32:58 From FishC Mobile | 显示全部楼层
学习打卡
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-16 11:13:16 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-6-15 09:06:22 | 显示全部楼层
6
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-6-14 15:31:38 | 显示全部楼层
332
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-6-13 15:22:03 | 显示全部楼层
0. 具有相同名称的方法或属性

1.灵活,方便,简洁

2.可以

3.

4.增强内聚

5.不属于

动动手:
0.
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-12 10:59:41 | 显示全部楼层
1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-6-11 23:05:33 | 显示全部楼层
0.

1.
同一个类在不同的场景可以有不同的功能

2.
可以,这是运算符号的多态

3.
不知道,同属于动物的类型?

4.
降低了耦合度

5.
是的

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-11 13:11:04 | 显示全部楼层
问答题0
函数接口不变, 接口是不变的,但它却可以根据不同的对象执行不同的操作
--------------------
问答题1
多态优势就是不用根据不同对象修改函数
--------------------
问答题2
根据操作数类型不同,得到不同结果的现象,可以称为多态
--------------------
问答题3
When I see a bird that walks like a duck and swims like a duck and quacks like a duck, I call that bird a duck.
--------------------
问答题4
多态是降低了耦合度
--------------------
问答题5
不属于多态现象
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-10 14:01:02 | 显示全部楼层
0 -__-
1 a;lsdjkfasl;k;ls
2 可以
3
4 属于?


0
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-6-8 16:28:19 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-6-6 20:43:03 | 显示全部楼层
good
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-6-1 14:53:27 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-5-31 20:09:22 | 显示全部楼层
0:见机行事
1:不同的对象执行不同的操作
2:是,一个是求和,一个是拼接
3:
4:
5:不是
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-5-30 21:32:03 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-5-26 20:45:00 | 显示全部楼层
#0
"对于不同的对象可以采用同一个方法、函数、运算符来体现多态"
#1
"简化代码增强可读性,实现对不同类型对象的适应使用"
#2
"可以"
#3
"当我看到 一只 像 鸭子 一样走路,像 鸭子 一样 游泳 ,像 鸭子 一样嘎嘎叫的 鸟 ,我就叫它 鸭子"
#4
"降低了耦合"
#5
"是"
#动动手
#0
card=9999
uid_dict={}
E_list,T_list,M_list=[],[],[]
job_dict={}
def main():
    a=Member()
    order=input("1.录入;2.查询;3.升级;4.降级;5.退出:")
    while order!='5':
        if order=="1":
            a.rgi()
        if order=="2":
            a.search()
        if order=="3":
            a.up()
        if order=="4":
            a.down()
        order=input("1.录入;2.查询;3.升级;4.降级;5.退出:")

class Member:
    def get_uid(self):#工号
        return self.uid
    def get_name(self):#姓名
        return self.name
    def get_job(self):#职位
        return self.job
    def get_grade(self):#级别
        return self.grade
    def get_year(self):#工龄
        return self.year
    def get_salary(self):#薪资
        if self.job=="E":
            self.salary=3000+500*self.grade+50*self.year
            return self.salary
        if self.job=="T":
            self.salary=4000+800*self.grade+100*self.year
            return self.salary
        if self.job=="M":
            self.salary=5000+1000*(self.grade+self.year)
            return self.salary
#录入
    def rgi(self):
        global card#main中要有global card=9999
        card+=1
        self.uid=card
        self.name=input("姓名:")
        self.job=input("职位(E.普通员工;T.组长;M.经理):")
        self.year=int(input("工龄:"))
        self.grade=int(input("级别:"))
        if self.job=="E" and self.grade>10:
            self.grade=int(input("该职位最高级别为10,请重新录入级别:"))
        if self.job=="T" and self.grade>6:
            self.grade=int(input("该职位最高级别为6,请重新录入级别:"))
        if self.job=="M" and self.grade>3:
            self.grade=int(input("该职位最高级别为3,请重新录入级别:"))
        self.salary=self.get_salary()
        uid_dict[self.uid]=[self.name,self.job,self.grade,self.year, self.salary]
        E_list.extend([str(self.uid)+"-"+self.name for x in self.job if self.job=='E'])
        T_list.extend([str(self.uid)+"-"+self.name for x in self.job if self.job=="T"])
        M_list.extend([str(self.uid)+"-"+self.name for x in self.job if self.job=="M"])
        job_dict["E"]=E_list
        job_dict["T"]=T_list
        job_dict["M"]=M_list
        print(f"录入成功!姓名:{self.name},工号:{self.uid},薪资:{self.salary}")
#查询
    def search(self):
        order=input("1.员工查询;2.职位查询:")
        if order=="1":
            card=int(input("请输入工号:"))
            try:
                uid_dict[card]==None
            except KeyError:
                print("该工号不存在!")
            else:
                print(f"姓名:{uid_dict[card][0]}\n职位:{uid_dict[card][1]}\n级别:{uid_dict[card][2]}\n工龄:{uid_dict[card][3]}\n薪资:{uid_dict[card][4]}\n")
        if order=="2":
            job=input("职位(E.普通员工;T.组长;M.经理):")
            j_dict={"E":"普通员工","T":"组长","M":"经理"}
            if len(job_dict[job])==0:
                print(f"目前公司没有{j_dict[job]}")
            else:
                print(f"目前{j_dict[job]}共有{len(job_dict[job])}人")
                [print(x) for x in job_dict[job]]
#升级
    def up(self):
        uid=int(input("请输入工号:"))
        x=uid_dict[uid]
        print(f"{x[0]},工号:{uid},当前职位:{x[1]}{x[2]},当前薪资:{x[4]}")
        uplevel=int(input("请输入需要增加的级数:"))
        joblevel={"E":10,"T":6,"M":3}
        f=list(joblevel.keys())
        if x[2]+uplevel>joblevel[x[1]]:
            job_dict[self.job].remove(str(self.uid)+"-"+self.name)
            x[1]=f[f.index(x[1])+1]
            x[2]=1
            self.job=x[1]
            self.grade=x[2]
            self.salary=self.get_salary()
            x[4]=self.salary
            job_dict[self.job].append(str(self.uid)+"-"+self.name)
        else:
            x[2]+=uplevel
            self.grade=x[2]
            self.salary=self.get_salary()
            x[4]=self.salary
        print("升级成功!")
        print(f"{x[0]},工号:{uid},升级后职位:{x[1]}{x[2]},升级后薪资:{x[4]}")
#降级
    def down(self):
        uid=int(input("请输入工号:"))
        x=uid_dict[uid]
        print(f"{x[0]},工号:{uid},当前职位:{x[1]}{x[2]},当前薪资:{x[4]}")
        downlevel=int(input("请输入需要减少的级数:"))
        joblevel={"E":10,"T":6,"M":3}
        f=list(joblevel.keys())
        if x[2]-downlevel<=0:
            job_dict[self.job].remove(str(self.uid)+"-"+self.name)
            x[1]=f[f.index(x[1])-1]
            x[2]=joblevel[x[1]]
            self.job=x[1]
            self.grade=x[2]
            self.salary=self.get_salary()
            x[4]=self.salary
            job_dict[self.job].append(str(self.uid)+"-"+self.name)
        else:
            x[2]-=downlevel
            self.grade=x[2]
            self.salary=self.get_salary()
            x[4]=self.salary
        print("降级成功!")
        print(f"{x[0]},工号:{uid},降级后职位:{x[1]}{x[2]},降级后薪资:{x[4]}")
    #class Employee(Member,RegistMixin):

   
   
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-5-26 08:47:22 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-5-25 09:30:47 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-5-24 21:09:10 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-5-24 15:56:53 | 显示全部楼层
0: show me
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-9-19 08:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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