- Bağlantıyı al
- X
- E-posta
- Diğer Uygulamalar
- Bağlantıyı al
- X
- E-posta
- Diğer Uygulamalar
Bir değişkenin programın hangi kısımlarında erişilebilir olduğu, onun kapsamını (scope) belirler. Python'da iki temel kapsam türü vardır:
Bir fonksiyonun içinde tanımlanan veya oluşturulan değişkenlerdir.
Özellik: Bu değişkenlere yalnızca tanımlandıkları fonksiyonun içinden erişilebilir. Fonksiyon çalışmayı bitirdiğinde, yerel değişkenler bellekten silinir.
Örnek:
# 'x' yerel değişkendir
x = 10
print(f"Fonksiyon İçi (Yerel x): {x}")
hesapla()
# print(x) # HATA! Fonksiyon dışından 'x'e erişilemez (NameError)
Programın ana gövdesinde (hiçbir fonksiyonun veya sınıfın içinde olmadan) tanımlanan değişkenlerdir.
Özellik: Bu değişkenlere programın her yerinden (fonksiyonların içinden dahil) erişilebilir. Program sonlanana kadar bellekte kalırlar.
Örnek:
print(f"Fonksiyon İçi (Küresel y): {y}")
goster()
print(f"Fonksiyon Dışı (Küresel y): {y}")
# Çıktı: 50, 50
Bir fonksiyonun içinden küresel bir değişkenin değerini okumakta sorun yoktur, ancak doğrudan değiştiremezsiniz. Python, fonksiyonda atama yapılan bir değişkeni otomatik olarak yerel olarak kabul eder.
Problem Örneği (Hata Verir):
sayac = 0 # Küresel
def artir():
# Python, burada 'sayac = sayac + 1' dediğimizde
# 'sayac'ı yerel değişken olarak görmeye çalışır.
# Ancak önce okumaya çalıştığı için hata verir.
sayac = sayac + 1
print(sayac)
# artir() # HATA: UnboundLocalError
global Anahtar KelimesiBir fonksiyonun içerisinden gerçekten küresel bir değişkeni değiştirmek istiyorsanız, bunu Python'a global anahtar kelimesini kullanarak belirtmelisiniz.
Çözüm Örneği:
def global_artir():
global sayac # Python'a, 'sayac'ın küresel kapsamdaki değişken
olduğunu bildiririz sayac = sayac + 1
print(f"Fonksiyon içi: {sayac}")
print(f"Başlangıç: {sayac}") # Çıktı: 0
global_artir() # Çıktı: Fonksiyon içi: 1
global_artir() # Çıktı: Fonksiyon içi: 2
print(f"Sonuç: {sayac}") # Çıktı: 2 (Küresel değer değişti)🔥 Python Kariyerinizi Hemen Başlatın!
Hemen kursumuza kaydolun ve bu güçlü araçları kullanarak profesyonel Python geliştiricisi olma yolunda ilk adımı atın. Kursumuzdaki uygulamalı modüller, sizi sadece bir yazılımcı adayı değil, hazır bir profesyonel haline getirecek. Python Eğitimini Udemy platformunda bulabilirsiniz.
[ Python Eğitimi Sıfırdan İleri Seviye ]
Tıklayın ve Python Eğitimine Hemen Kaydolun!
Yorumlar
Yorum Gönder