Naravno da postoji nacin da se linija napravi meksom, za to ce ti biti potrebno malo matematike.
Sto se tice pitanja o globalnim varijablama, dovoljno je deklarisati varijablu kao globalnu, kao sto Dusan rece, sa
global deklaracijom:
Code:
a = 5
def funkc():
global a
a = 8 # zelim da ovo a sada bude 8
print a # izbacuje vrednost 8 a ne 5
Mada, globalne varijable su po mom (i ne samo mom) misljenju stvar proslosti i ne bi trebalo da se koriste (sem u slucaju konstanti, sto je sasvim druga prica). Python je veoma moderan OO jezik i koriscenje arhetipskih konstrukcija kao sto su globalne varijable je potpuno nepotrebno. Preporucljivi refactoring tvog primera je sledeci:
Code:
a = 5
def func(a):
a = 8
func(a)
print a
Funkcije, kao i klase, bi trebalo da vrse operacije samo na svojim, lokalnim varijablama, u svom scope-u, jer je uvek dozvoljeno (i preporucljivo) funkcijama proslediti instancu varijable kao argument ukoliko je potrebno vrsiti bilo kakve operacije nad tim varijablama. To su, sto bi se reklo, osnove programiranja.
Alex: My favorite site is
http://localhost/
R.J. Oppenheimer: "I am become death, destroyer of worlds" (1945 AD)
tweet.13x ||
linkedin.13x