stuck di init line 9

Oleh wahyunurdian26 99 1 pada Sabtu, 25 Nov. 2023, 23:37:30


Kembali ke forum soal ini

#python #python-lanjutan #class-di-python


Petunjuk Diskusi
Silahkan masuk untuk berdiskusi



class Kendaraan(object):
    km = 0

    def __init__(self, nama):
        self.nama = nama

    def jalan(self, jarak):
        self.km += jarak

# Membuat objek mobil dengan parameter "Mobil"
mobil = Kendaraan('Mobil')

# Membuat objek motor dengan parameter "Motor"
motor = Kendaraan('Motor')

# Memanggil metode jalan() dengan parameter jarak untuk mobil dan motor
mobil.jalan(50)
motor.jalan(30)

# Mencetak properti nama dan km dari objek mobil dan motor
print mobil.nama, mobil.km
print motor.nama, motor.km

SyntaxError: Line 9: Augmented assignment of attributes is not allowed.
1 jempol


noval_auliya
119
2
· 1 tahun yang lalu · 1 jempol

Pada line 9 harusnya :
self.km = self.km + jarak

kemudian pada bagian cetak tidak bisa 2 parameter seperti itu harusnya:
print "{} - {}".format(mobil.nama, mobil.km)
print "{} - {}".format(motor.nama, motor.km)

sehingga code fullnya seperti ini :

class Kendaraan(object):
    km = 0

    def __init__(self, nama):
        self.nama = nama

    def jalan(self, jarak):
        self.km = self.km + jarak

# Membuat objek mobil dengan parameter "Mobil"
mobil = Kendaraan('Mobil')

# Membuat objek motor dengan parameter "Motor"
motor = Kendaraan('Motor')

# Memanggil metode jalan() dengan parameter jarak untuk mobil dan motor
mobil.jalan(50)
motor.jalan(30)

# Mencetak properti nama dan km dari objek mobil dan motor
print "{} - {}".format(mobil.nama, mobil.km)
print "{} - {}".format(motor.nama, motor.km)