首页 文章

从[等待]获取对象

提问于
浏览
-3

好吧,我现在开始在Python上学习OOP,并希望立即了解一些事情 . 我想打印所有得分高于5的汽车 . 我试过这样但是没用 .

class Car:
    def __init__(self, name, score):
        self.name = name
        self.score = score

Car1 = Car("Car 1", 10)
Car2 = Car("Car 2", 2)
Car3 = Car("Car 3", 7)
Car4 = Car("Car4", 6)
Car5 = Car("Car5", 3)

for Car:
    if self.score > 5:
        print(self.name)

如何正确地做到这一点?

1 回答

  • 1
    class Car:
        def __init__(self, name, score):
            self.name = name
            self.score = score
    
    Car1 = Car("Car 1", 10)
    Car2 = Car("Car 2", 2)
    Car3 = Car("Car 3", 7)
    Car4 = Car("Car4", 6)
    Car5 = Car("Car5", 3)
    
    cars = [Car1, Car2, Car3, Car4, Car5]
    for car in cars:
        if car.score > 5:
            print(car.name)
    

    类本身并不知道它的所有'实例化,你需要将它们保存在某处,例如 cars 变量,然后迭代它 . 引用 self 只能在代码之外的类代码内部工作 .

相关问题