Global (Genel) ve Local (Yerel) Değişkenler

Python Python - Ders Notları Yazılım

Fonksiyonların içinde ve dışında tanımlanan aynı isimdeki değişkenler birbirinden farklı değerleri tutabilir.

x = "Yasin"         # Global olarak tanımlanmış bir x değişkeni

def fnkIsim():
    x = "Ercüment"     # Local olarak tanımlanmış bir x değişkeni. 
    print(x)           # Burada fnkIsim() fonksiyonunun içindeki x değişkeninin değeri (Ercüment) ekrana yazdırılır. Fonksiyon içinde x değişkeni tanımlanmasaydı, print() fonksiyonu bir üstteki x değişkeninin değerini (Yasin) ekrana yazdıracaktı.

fnkIsim()              # fnkIsim() fonksiyonu çağırılıyor.

print(x)               # Burada global olarak tanımlanmış x değişkeni ekrana yazdırılır. 

Örnek 1 :

a = 100
def fnkA(a):
    print("1-) a = ",a)    # Yukarıda tanımlanmış global a değişkeninin değerini (100) ekrana yazar.
    a= 200
    print("2-) a = ",a)    # Bir üst satırdaki a değişkeninin içerisindeki değeri (200) ekrana yazar.

fnkA(a)
print("3-) a = ",a)        # fnkA() fonksiyonu dışında olduğundan fonksiyon içindeki değişiklikler (a = 200) burada etkisizdir. Bu yüzden ekrana 100 yazar.

Dışarıda veya içeride tanımlanan değişkenlerin aynı değeri alması istiyorsak global olarak tanımlamalıyız.

a = 100

def fnkA():
    global a            # Yukarıda tanımlanan a değişkenin içeride kullanılan a değişkeni ile aynı olmasını sağlar. Artık a değişkeni bir adettir.
    print("1-) a = ",a) # Yukarıda tanımlanmış global a değişkeninin değerini (100) ekrana yazar.
    a= 200      
    print("2-) a = ",a) # Bir üst satırdaki a değişkeninin içerisindeki değeri (200) ekrana yazar.

fnkA()
print("3-) a = ",a)     # Fonksiyon içindeki a değişkeni ile dışındaki a değişkeni aynı olduğundan ekrana 200 yazar.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir