如何解决Python - 如何访问 agggate 中的类对象属性对于该类的所有实例?
我正在设计一个 Python 程序来模拟 3 辆以上汽车的车队。我为每辆车建立了一个具有特定属性和功能的车辆类:
class Vehicle():
def __init__(self,VIN,color,odometer):
self.VIN = VIN
self.color = color
self.odometer = odometer
# many other functions...
我的目标是访问“舰队”的参数并回答以下问题:
- 总共有多少辆车?
- 所有里程表(距离)的总和是多少?
- 有多少辆红色汽车?
我被推荐使用抽象基类,但不确定这是否是最好的方法? 回答这些问题的推荐方法是什么?谢谢。
class Fleet:
def __init__(self,input_vehicles):
"Pass list of vehicle objects to create fleet"
self.vehicle_list = input_vehicles
def size_total(self):
"Answer how many vehicles"
return len(self.vehicle_list)
def size_by_color(self,selected_color):
"Answer how many cars of a specific color"
c = 0
for v in self.vehicle_list:
if v.color == selected_color:
c = c + 1
return c
def total_odometer(self):
"Answer the total odometer (distance) readings"
od = 0
for v in self.vehicle_list:
od = od + v.odometer
return od
# build vehicles
V1 = Vehicle('1','red',100)
V2 = Vehicle('2',3000)
V3 = Vehicle('3','blue',5)
# build fleet
myfleet = Fleet([V1,V2,V3])
# Get fleet metrics
myfleet.size_total() # returns 3
myfleet.size_by_color('red') # returns 2
myfleet.total_odometer() # returns 3105
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。