[python] globalni promenne

Petr Mach gsl na seznam.cz
Čtvrtek Únor 13 13:34:00 CET 2003


Zdenek Pavlas wrote:

>> souborech. Jde o to, jak jazyk umozni s globalnimi promm.
>> nakladat, aby v nich byl poradek a ne zmatek. Jazyk
>> PHP nebo treba JavaScript s tim nema zadne problemy.
> Myslim ze python s tim take nema problemy, staci pouzit
> "import modul", a pak se odkazovat na "modul.global_var".
> Problem je pouze pokud mate globalni promenne v modulu
> __main__, a chcete se na ne dostat z jineho modulu.
> Nevim o jine metode nez pres sys.modules['__main__'] :(
Problem je v tom, ze kdyz mate ty globalni promenne v
jednom souboru a pak chcete nejake funkce vydelit,
musite vsude ty promenne prejmenovat. To je tezkej
opruz.

>> Idealni je mit je v oddelenem souboru (nebo souborech
>> u rozsahlych souboru, s vice globalnimi celky) a vkladat
>> je tam, kam je potreba. Ze ma Python pro kazdy soubor
>> svuj globalni prostor je vynikajici vec, to ze ale
>> mezi vybraanymi soubory nejde ty globalni promenne
>> exportovat/sdilet na explicitni pozadavek, uz ale
>> vnimam jako chybu.
> 
> Sdilet je je. Pokud chcete z nejakeho duvodu opravdu
> "superglobalni" promenne, lze je nacpat do __builtins__.
> Silne se to ale nedoporucuje, kod je pak neprehledny
> protoze vola funkce ktere odnikud neimportoval.
Vyzkousim, to vypada jako reseni, dekuji. Nechci volat
funkce, chci jen mit sdilene promenne.





Další informace o konferenci Python