Diskuze: Statické proměnné

Python Python Statické proměnné

Aktivity (1)
Avatar
Ondřej Krsička
Redaktor
Avatar
Ondřej Krsička:24.10.2016 18:26

Ahoj, nevíte, proč to nefunguje a jak to opravit? Ondra

class Clothing:
    id_counter = 0
    def __init__(self, what, length, color):
        self.what = what
        self.length = length
        self.id = id_counter
        self.color = color
        id_counter += 1

Chyba:

UnboundLocalError: local variable 'id_counter' referenced before assignment
 
Odpovědět 24.10.2016 18:26
Avatar
gcx11
Redaktor
Avatar
Odpovídá na Ondřej Krsička
gcx11:24.10.2016 20:10

Ahoj, myslím, že to je proto, že to bere v initu jako novou lokální proměnnou. Změň to přičítání na přístup skrz třídu:

Clothing.id_counter += 1
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 24.10.2016 20:10
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.