[python] Py cz globalizace
    Pavel Kosina 
    geon na post.cz
       
    Pondělí Listopad 26 21:18:57 CET 2007
    
    
  
Calis.martin na seznam.cz napsal(a):
> jinak řečeno mam problem s tímhle: 
> "pocet = Label(okno2,text=dny[x][0])
> pocet.pack()"
> a pak bych ve višim patře potřeboval udělat tohle: "pocet.destroy()" jenže to nefunguje a zglobalizovat to taky nemohu...
>
>   
Krásné slovo - zglobalizovat ;-) . Řešení je několik:
1/ zglobalizovat - to by samozřejmě mělo jít a pokud ti kolidují jména, 
jednoduše použij jiné
2/ Na nejvyšší úrovni programu si založ třebas slovník a ve funkcích do 
něj přidávej prvky - ty pak budou přístupné vždy a všude
3a/ Na nejvyšší úrovni programu si založ class  a vytvoř jednu instanci, 
jakýsi kontejner proměnných, a v ve funkcích zakládej proměnné instance, 
které pak můžeš používat úplně všude
3b/ využij již některou existující class, pokud máš např. root=Tk(), tak 
ve funkci udělat root.pocet=pocet, a jinde používat 
root.pocet.destroy(). Pozor at nepřepíšeš některou defaultní proměnnou  
- používal bych výhradně česká jména proměnných.
Tak asi tak.
-- 
geon
Pavel Kosina
    
    
Další informace o konferenci Python