本人最近上初中挺忙,退游了很长时间,昨天刚回来。准备考六级时,一点题也没有。今天考了六级,来给大家发题了!接住哦!
目录
题目
小明编写一个类实现设置马的品种、年龄、性别及速度,输出相应的语句,请补全代码。
如下代码输出结果为“一匹阿拉伯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) # 调用实例方法输出最终结果
结语
咱腹中也没有啥诗书,结语就平平常常了哈。能看到此文章者 必是精英 祝愿你们在编程的世界越走越高、越飞越远!觉得好的话,就支持一下哈