中国电子学会2022年python六级考试真题大题 类与对象练习题

发布于:2022-12-14 ⋅ 阅读:(1142) ⋅ 点赞:(0)

本人最近上初中挺忙,退游了很长时间,昨天刚回来。准备考六级时,一点题也没有。今天考了六级,来给大家发题了!接住哦!

目录

题目

思路

第一个空

第二个空

第三个空

第四个空

最终的总体解读

结语


题目

小明编写一个类实现设置马的品种、年龄、性别及速度,输出相应的语句,请补全代码。

如下代码输出结果为“一匹阿拉伯12岁的公马,在草原上奔跑的速度为50km/h”。

class ____①____:
    def __init__(self,category,gender,age):
        self.category = category
        ____②____
        self.age = age
        self.speed=0
    def get_descriptive(self):
        self.info = "一匹" + self.category + ____③____ + "岁的" + self.gender + "马"

    def write_speed(self,new_speed):
        self.speed = new_speed
        addr = "在草原上奔跑的速度为"
        print(____④____+","+addr+str(self.speed) + "km/h")
horse = Horse("阿拉伯","公",12)
horse.get_descriptive()
horse.write_speed(50)

思路

这题像是白给的,只要懂一点类就能答的上。抑或你不懂类,你但凡有一点做题经验也能答对。

做编程界的完形填空,首先要看要补全的代码,理解出题者的思路。

第一个空

看第一个空,这是在定义类名,类名在哪里呀~类名在哪里?类名就在创建对象那里~我们看这一行代码

horse=Horse("阿拉伯","公",12)

明显可以看出Horse是这个类的类名。所以该空填

class Horse:

(或Horse()或Horse(object)都是不影响的)

第二个空

第二个空是在创建实例变量(这点你联系上下文便能知晓)

因为下文出现了self.gender 但是你在前文中并未找到定义它的代码,这说明神马?这说明需要我们定义一下它

照葫芦画瓢,你就可以把空填上了

self.gender = gender

第三个空

第三个空所在的代码就是把最终输出的前半句保存到了self.info里面了,所以我们要看它缺少的成分。一匹✔ 地区✔ 年龄✘ 岁的✔ 性别✔ 马✔ 心机之蛙一直摸你肚子(真相只有一个)缺少的成分就是——年龄!

我们把年龄所对应的实例变量填上就好啦   但是注意!!!年龄是整数 而字符串是不可以和整数进行拼接的! so 我们需要加str()

最终如下代码

self.info = "一匹" + self.category +  self.age + "岁的" + self.gender + "马"

第四个空

第四个空和第三个一模一样的套路,还是检查缺少了哪些成分。这里就不带大家心机之蛙.......了

可以看出,第四个空所在的代码就是要输出的最终结果,后半句健在,前半句无了,我们需要给前半句复活。可前半句被塞到哪个棺材里了呢?啊,是self.info 我们把它填进去即可

print(self.info+","+addr+str(self.speed) + "km/h")

最终的总体解读

class Horse:   # 创建马类
    def __init__(self,category,gender,age):
        self.category = category   # 创建实例变量——老家
        self.gender = gender   # 创建实例变量——性别
        self.age = age  # 创建实例变量——年龄
        self.speed=0  # 创建实例变量——速度
    def get_descriptive(self):
        self.info = "一匹" + self.category + str(self.age) + "岁的" + self.gender + "马"  # 前半句

    def write_speed(self,new_speed):
        self.speed = new_speed   # 传入速度
        addr = "在草原上奔跑的速度为"  # 后半句一部分
        print(self.info +","+addr+str(self.speed) + "km/h")  # 最终输出结果
horse = Horse("阿拉伯","公",12)  # 创建实例对象
horse.get_descriptive()  # 调用实例方法搞出前半句
horse.write_speed(50)  # 调用实例方法输出最终结果

结语

咱腹中也没有啥诗书,结语就平平常常了哈。能看到此文章者 必是精英 祝愿你们在编程的世界越走越高、越飞越远!觉得好的话,就支持一下哈

本文含有隐藏内容,请 开通VIP 后查看