Hoe kan ik in een class in Python een variabele gebruiken?

Status
Niet open voor verdere reacties.

Holidaybuggy

Gebruiker
Lid geworden
6 jun 2005
Berichten
42
Goedemiddag,

Hoe kan ik in een class in Python een variabele gebruiken?
Ik heb onderstaande code
Maar nu heb ik er "hard" instaan:
print (car1.brand, car1.color)
print (car2.brand, car2.color) enz

Als ik dit probeer met een "for loop" dan krijg ik de foutmelding:

TypeError: 'str' object is not callable
(Ik haal dan het "#" voor de regel: print (car(x).brand)
weg

Wie kan mij helpen?


Code:
class new_car:
    def __init__(self,brand,color):
        # Sets all the properties
        self.brand = brand
        self.color = color

if __name__ == "__main__":
    # Creates instances of new_car, each with unique properties
    car1 = new_car("Ford","orange")
    car2 = new_car("Opel","white")
    car3 = new_car("Fiat","black")

print (car1.brand, car1.color)
print (car2.brand, car2.color)
print (car3.brand, car3.color)

for x in range(1, 4):
    car = 'car' + str(x)
    print (car)
    #print (car(x).brand)
 
waarom gebruik je hier geen list?

cars = []

cars.append(new_car("Ford","orange"))
cars.append(new_car("Ford","orange"))
cars.append(new_car("Ford","orange"))

#daarna door je list heen loopen
for car in cars:
print(car.brand)

zelf even testen maar volgens mij moet het zo.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan