鱼C论坛

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

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

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

使用道具 举报

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

使用道具 举报

发表于 2023-10-22 12:22:45 | 显示全部楼层
0:
继承、组合、覆盖
1:
灵活,不用再重新编辑方法
2:
可以
3:
是不是鸭子不重要,只要它能游泳,能表现出和鸭子相似的行为

4:
增强了内聚

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

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2023-10-20 23:09:36 | 显示全部楼层
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-10-13 13:25:35 | 显示全部楼层
0
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

使用道具 举报

发表于 2023-10-11 11:50:30 | 显示全部楼层
0
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2023-10-7 15:59:46 | 显示全部楼层
答案
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

使用道具 举报

发表于 2023-10-4 19:34:20 | 显示全部楼层
0.重写
1.
2.可以
3.
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-10-4 13:00:28 | 显示全部楼层
wew
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-4 08:33:19 | 显示全部楼层
11
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-10-3 18:41:44 | 显示全部楼层
问答题:
0. 通过在类外定义使用类方法的函数。
1. 相同的函数,但可以面向不同的对象输出不同的结果。
2. 可以
3.
4. 降低耦合
5. 不属于
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

使用道具 举报

发表于 2023-9-30 13:53:53 | 显示全部楼层
0,  同一个函数在面对不同类型的对象能体现出相似但不同的功能
1,  我认为主要是提高代码的简洁性,降低学习的难度
2.  可以
3.  
4.  我认为是增强了内聚
5.  不是,他只不过是利用了函数的基本特性


0.  就这样吧
  1. class PubInfoMixin:  # 公共信息库
  2.     uid = 10000
  3.     pi_dict = {}


  4. class Employee(PubInfoMixin):  # 普通员工类
  5.    
  6.     iic = 0  #类的实例化次数

  7.     def __init__(self, name, job, grade, year, uid):
  8.         self.name = name
  9.         self.job = job
  10.         self.grade = grade
  11.         self.year = year
  12.         self.uid = uid
  13.         Employee.iic += 1
  14.    
  15.     def __del__(self):
  16.         Employee.iic -= 1
  17.         

  18.     def get_uid(self):
  19.         return self.uid
  20.    
  21.     def get_name(self):
  22.         return self.name
  23.    
  24.     def get_job(self):
  25.         return self.job
  26.    
  27.     def get_grade(self):
  28.         return self.grade
  29.    
  30.     def get_year(self):
  31.         return self.year
  32.    
  33.     def salary(self):
  34.         return 3000 + 500*self.grade +50*self.year
  35.    


  36. class Teamleader(PubInfoMixin):
  37.    
  38.     iic = 0

  39.     def __init__(self, name, job, grade, year, uid):
  40.         self.name = name
  41.         self.job = job
  42.         self.grade = grade
  43.         self.year = year
  44.         self.uid = uid
  45.         Teamleader.iic += 1
  46.    
  47.     def __del__(self):
  48.         Teamleader.iic -= 1

  49.     def get_uid(self):
  50.         return self.uid
  51.    
  52.     def get_name(self):
  53.         return self.name
  54.    
  55.     def get_job(self):
  56.         return self.job
  57.    
  58.     def get_grade(self):
  59.         return self.grade
  60.    
  61.     def get_year(self):
  62.         return self.year
  63.    
  64.     def salary(self):
  65.         return 4000 + 800*self.grade + 100*self.year



  66. class Manager(PubInfoMixin):

  67.     iic = 0

  68.     def __init__(self, name, job, grade, year, uid):
  69.         self.name = name
  70.         self.job = job
  71.         self.grade = grade
  72.         self.year = year
  73.         self.uid = uid
  74.         Manager.iic += 1
  75.    
  76.     def __del__(self):
  77.         Manager.iic -= 1
  78.         

  79.     def get_uid(self):
  80.         return self.uid
  81.    
  82.     def get_name(self):
  83.         return self.name
  84.    
  85.     def get_job(self):
  86.         return self.job
  87.    
  88.     def get_grade(self):
  89.         return self.grade
  90.    
  91.     def get_year(self):
  92.         return self.year
  93.    
  94.     def salary(self):
  95.         return 5000 + 1000*(self.grade + self.year)



  96. def luru():
  97.     name = input("姓名")
  98.     job = input("职位(E.普通职员;T.组长;M.经理):")
  99.     year = int(input("工龄"))
  100.     grade = int(input("级别"))
  101.     while job :
  102.         if job == 'E':
  103.             PubInfoMixin.pi_dict[PubInfoMixin.uid] = Employee(name, job, grade, year, PubInfoMixin.uid)
  104.             PubInfoMixin.uid += 1
  105.             break
  106.         elif job == 'T':
  107.             PubInfoMixin.pi_dict[PubInfoMixin.uid] = Teamleader(name, job, grade, year, PubInfoMixin.uid)
  108.             PubInfoMixin.uid += 1
  109.             break
  110.         elif job == 'M':
  111.             PubInfoMixin.pi_dict[PubInfoMixin.uid] = Manager(name, job, grade, year, PubInfoMixin.uid)
  112.             PubInfoMixin.uid += 1
  113.             break
  114.         else:
  115.             job = input("指令错误,请重新输入\n职位(E.普通职员;T.组长;M.经理):")

  116. def chaxun():
  117.     ins = input("1.员工查询;2.职位查询")
  118.     if  ins == '1':
  119.         uid = int(input("请输入工号:"))
  120.         ygdx = PubInfoMixin.pi_dict.get(uid)
  121.         if ygdx:
  122.             print("姓名:",ygdx.name)
  123.             print("职位:",ygdx.job)
  124.             print("级别:",ygdx.grade)
  125.             print("工龄:",ygdx.year)
  126.             print("薪资:",ygdx.salary())
  127.         else:
  128.             print("该工号不存在!")
  129.                
  130.     elif ins == '2':
  131.             job_ = input("职位(E.普通职员;T.组长;M.经理):")
  132.             if job_ == 'E':
  133.                 print('目前普通职员共有',Employee.iic,'人', sep='')
  134.             elif job_ == 'T':
  135.                 print('目前组长共有',Teamleader.iic,'人', sep='')
  136.             elif job_ == 'M':
  137.                 print('目前经理共有',Manager.iic,'人', sep='')
  138.             else:
  139.                 print("指令错误,请重新输入指令")

  140.     else:
  141.         print("指令错误,请重新输入指令")


  142. def shengji():
  143.     _id = int(input("请输入工号"))
  144.     dx = PubInfoMixin.pi_dict.get(_id)
  145.     if dx:
  146.         xz_1 = dx.salary()
  147.         print(dx.name, "工号:", dx.uid, "当前职位:", dx.job, dx.grade, "当前薪资", xz_1, sep='')
  148.         _ = int(input("请输入要增加的级数:"))
  149.         dx.grade += _
  150.         print("升级成功!")
  151.         print(dx.name, "工号:", dx.uid, "升级后职位:", dx.job, dx.grade, "升级后薪资", dx.salary(), '(',dx.salary()-xz_1 , ')', sep='')
  152.     else:
  153.         print("无此工号!")


  154. def jiangji():
  155.     _id = int(input("请输入工号"))
  156.     dx = PubInfoMixin.pi_dict.get(_id)
  157.     if dx:
  158.         xz_1 = dx.salary()
  159.         print(dx.name, "工号:", dx.uid, "当前职位:", dx.job, dx.grade, "当前薪资", xz_1, sep='')
  160.         _ = int(input("请输入要减少的级数:"))
  161.         dx.grade += _
  162.         print("降级成功!")
  163.         print(dx.name, "工号:", dx.uid, "降级后职位:", dx.job, dx.grade, "降级后薪资", dx.salary(), '(', xz_1-dx.salary(), ')', sep='')
  164.     else:
  165.         print("无此工号!")



  166. def main():

  167.     ins = input('1.录入;2.查询;3.升级;4.降级;5.退出:')
  168.     while ins != '5':
  169.         if ins == '1':
  170.             luru()
  171.         elif ins == '2':
  172.             chaxun()
  173.         elif ins == '3':
  174.             shengji()
  175.         elif ins == '4':
  176.             jiangji()
  177.         else:
  178.             ins = input("请重新输入指令:")
  179.         ins = input('1.录入;2.查询;3.升级;4.降级;5.退出:')


  180. main()
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-9-28 21:45:34 | 显示全部楼层
查看
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-8-21 21:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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