‫Fonksiyonlar hakkındaki anlayışımızı sonlandırmak için kapsam hakkında konuşmalıyız.
‫Anahtar terimlerimizden bir diğeri.
‫Kapsam nedir?
‫Bir göz atalım.
‫Kapsam, birçok programlama dilinde bulunan bir şeydir.
‫Ve kapsam basitçe şu anlama gelir Hangi değişkenlere sahibim?
‫Erişim.
‫Bu kadar.
‫Peki bununla ne demek istiyorum?
‫Bunu daha önce de gördük, tam yazdırma yaptığım yerde ve sonra çalıştır'a tıklarsam isim diyelim.
‫Bir hata alacağım.
‫Bir isim hatası.
‫İsim adı tanımlanmamış çünkü.
‫Öyle bir şey yok.
‫Doğru.
‫Ve bu noktaya kadar bunu gerçekten tartışmadık, ancak bunun nedeni kapsamdır.
‫Hangi değişkenlere erişimim var?
‫Python yorumlayıcısı der ki, Hey, neye erişimim var?
‫Ve anlamadığı ya da erişemediği bir şey kullandığımızda, bir isim hatası verecektir.
‫Veya değişkeni burada tanımlanmamıştır ve python'da kapsam, işlevsel kapsam veya işlev kapsamı dediğimiz şeye sahiptir.
‫Bu ne anlama geliyor?
‫Şimdiye kadar, toplam 100'e eşittir gibi bir değişken oluşturduğumuzda, bu küresel kapsam dediğimiz şeyin bir
‫parçasıydı.
‫Bu, bu dosyadaki herhangi birinin bu toplam değişkene erişimi olduğu anlamına gelir.
‫Bunu bir koşullu blok içinde kullanabilirim.
‫Bir fonksiyonun içinde kullanabilirim.
‫Küresel bir kapsama sahiptir.
‫Ama Python'un bir fonksiyon kapsamı olduğunu söylediğimde.
‫Demek istediğim, bir fonksiyon oluşturduğumuzda ve diyelim ki total as some veya diyelim ki some func oluşturduğumuzda.
‫Ve fonksiyonun içinde toplam oluşturuyoruz.
‫Toplamı buraya yazdırırsam ve çalıştır'a tıklarsam.
‫Ben de aynı şeyi duyuyorum.
‫İsim toplamı tanımlanmamıştır.
‫Bunun nedeni Python'un fonksiyon kapsamıdır.
‫Bir fonksiyonun içinde değilse her zaman bir değişken yaratırız.
‫O zaman küresel kapsamın bir parçasıdır.
‫Ona erişimimiz var.
‫Ancak burada kırmızı altı çizili, tanımlanmamış isim toplamını görüyorsunuz.
‫Diyelim ki bir koşulum var, eğer doğruysa.
‫O zaman X 10'a eşittir.
‫Bunu yaparsam ve X dersem ve Çalıştır'a tıklarsam.
‫On tane var çünkü.
‫Girintilerim olmasına rağmen.
‫Yeni bir kapsam oluşturduğum tek zaman.
‫Bunu ortaya çıkardığımız yeni bir evren olarak düşünebilirsiniz.
‫Bunu ancak aşağıdaki gibi bir fonksiyon tanımladığımızda yapabiliriz.
‫Yani kapsamı, yarattığımız yeni bir dünya olarak düşünün.
‫Bizim durumumuzda, bir fonksiyon oluşturduğumuzda, fonksiyonun içinde girintili olan herhangi bir şeyin
‫gerçekten erişemediğimiz kendi dünyası olduğu yeni bir dünya yaratırız.
‫Toplamı yalnızca baskıyı girintilersek kullanabiliriz.
‫Ve bu dünyanın bir parçası.
‫Kapsam budur.
‫Kimin kime erişimi var?
‫Burada biraz ara verelim.
‫Bir sonraki videoda kimin kime erişimi olduğunu bulmaya çalışacağımız küçük bir oyun oynamak istiyorum.
‫Onda görüşürüz.
‫Güle güle.