Linux kullanarak Python programlama kursu. Onuncu Bölüm

Pixabay'den Pexels tarafından alınan görsel.

In önceki bölüm Linux tabanlı bu Python programlama kursunda l'den bahsedeceğiz.Fonksiyonlar, hem yazdığımız uygulamada hem de o görevi yerine getirmesi gereken diğer uygulamalarda yeniden kullanabileceğimiz, belirli görevler için tasarlanmış küçük programlardır.

Fonksiyonlarla çalışırken aklımızda tutmamız gereken bir şey şudur: Değişkenler, listeler, demetler ve sözlükler gibi diğer program bileşenleriyle nasıl etkileşim kurdukları.

Linux kullanarak Python programlama kursu

Fonksiyonlarla çalışırken aklımızda tutmamız gereken şey, programın tamamı tarafından kullanılacak değişkenler, listeler ve sözlükler olduğu gibi, yalnızca tanımlandıkları fonksiyon tarafından kullanılacak olanların da olduğudur.

Değişkenler

Bu, küresel olarak tanımlanmış bir değişken ile yerel olarak tanımlanmış bir değişken arasındaki farktır.

`distro` değişkeni programın başında tanımlanır ve `mostrar` fonksiyonu bunu kullanır. Ayrıca, onu bir listeye eklemek için oluşturulan başka bir fonksiyon tarafından da kullanılabilir.

Değişken fonksiyonun içinde tanımlandığı için, kodun başka bir yerinden çağırmaya çalışırsak hata mesajı alırız.
Genel bir değişkeni, `global` komutu kullanarak tüm program genelinde değiştirmek mümkündür.

Bu program, dağıtım değişkenine Ubuntu adını atar ve ardından global bir değişkenin adını Debian olarak değiştirmesini söyleyen bir fonksiyon oluşturur. Daha sonra bu fonksiyonu çağırarak ad değişikliğini gerçekleştirir.

Listeleri

Bir fonksiyon kullanarak global olarak oluşturulmuş bir listeye öğe ekleyebilir veya listeden öğe kaldırabiliriz. Örneğin, bu program dağıtımlar listesine bir öğe ekler.

Yeniden atama, bir fonksiyon içinde global liste ile aynı ada sahip bir liste oluşturma işlemidir. Şu örneğe bakalım:

Gördüğümüz gibi, fonksiyonu çağırdığımızda fonksiyonun içinde tanımlanan listeyi yazdırırken, fonksiyonun dışında çağırdığımızda ise başlangıçta oluşturulan listeyi yazdırıyor.

Tuple'lar

Tuple'lar değiştirilemez olduğundan, yalnızca iki şey yapabiliriz.
1) Küresel olanla aynı ada sahip yerel bir demet oluşturun.

2) Bir demeti değiştirin.

Fonksiyonun içine, başlangıçta tanımladığımız demeti değiştireceğimizi belirten genel bir talimat ekliyoruz.

sözlükleri

Sözlükler değiştirilebilir olduğundan, küresel olarak tanımlanmış bir sözlüğü kolayca değiştirebiliriz.

Dikkatlice bakarsanız, fonksiyon içinde sözlüklerin içeriklerini tanımlamak için kullandığı süslü parantezler yerine, değiştirilen öğeyi ve değişikliği belirtmek için köşeli parantezler kullandığımızı fark edeceksiniz.

Parametreli veya parametresiz fonksiyonlar

Bir fonksiyonu çağırdığımızda, ona belirli bir parametre atamak mümkündür.

Bu, parametresiz bir fonksiyona örnektir.

Bu da, belirli bir parametre üzerinde işlem yapmasını söylediğimiz bir fonksiyona örnektir.

Farklı türde parametreler belirleyebiliriz:

  • def function(): Bu fonksiyon herhangi bir parametre gerektirmez.
  • tanım fonksiyonu (dağıtım): Distro değişkeninin içeriği bir parametre olarak atanır.
  • def function(distro="Ubuntu"): Fonksiyona Ubuntu parametresi atanmıştır ancak bu parametre kullanıcı tanımlı başka bir parametreyle değiştirilebilir.
  • def function(*args): Birkaç parametre kullanabiliriz.

İlk iki paragrafın örneklerini zaten verdik - Şimdi diğer iki paragrafın örneklerine bakalım.


Bu program, varsayılan olarak fonksiyona Ubuntu parametresini atar. Fonksiyonu parametre atamadan çağırdığımızda, Ubuntu için kontrol yapılır. Sonraki çağrı, listede bulunan Debian için, üçüncüsü ise listede olmayan Arch Linux için kontrol yapar.

Peki ya tek bir çağrıyla birden fazla parametreyi test etmek istersek ne olur?


Bu şekilde parametre listesini bir demet (tuple) içine yerleştiriyoruz.
Parametre olarak liste, demet ve sözlük kullanmak da mümkündür.

Listeleri

Tuple'lar

sözlük


Item, tüm anahtar/değer çiftlerini görüntülememizi sağlayan dahili bir Python yöntemidir.

İade beyanı

Normalde, bir fonksiyon içindeki kod yürütmesinin sonuçları programın diğer bölümlerine erişilemez. Bu durum, fonksiyonun yürütülmesinin sonunu ve programın yürütülmesinin devamını da işaret eden `return` ifadesiyle düzeltilebilir. Aşağıdaki örneğe bakalım:

Python 3'te bir fonksiyonda `return` ifadesini kullanma

`return` ifadesi, kodun sonucunu daha sonra kullanılmak üzere kaydeder ve kodun yürütülmesini durdurur.

Bu program, kullanıcıdan bir dağıtımın adını girmesini ister ve karşılaştırmanın sonucunu daha sonra kullanılmak üzere bir değişkene kaydeder.

Kodla ilgili yorumlar

Uzun kodlar yazdığımızda ve bunları tekrar gözden geçirmemiz gerektiğinde veya başkasının bunu yapması gerektiğinde, bunları belgelemeliyiz; yani, kodun her bölümünün ne yaptığını açıklayan notlar eklemeliyiz. # sembolüyle başlayan basit yorumlar yazmak mümkündür.

# El comando print muestra en pantalla un texto o el contenido de una variable

Python, # işaretinden sonra gelen metnin kodun bir parçası olmadığını anlayacak ve onu çalıştırmaya çalışmayacaktır.

Teknik olarak yorum olmasalar da, bir değişkene atanmayan ve kullanılması önerilmeyen metin dizeleri olmalarına rağmen, programın yok sayacağı bilgileri 3 tırnak işareti arasına yazmak mümkündür.
«» »
Yazdırma komutu ekrana metin yazdırır.
Listeler, öğelerin gruplarıdır.
Fonksiyonlar, bir görevi yerine getiren ve yeniden kullanılabilen küçük programlardır.
Tuple'lar değiştirilemezdir.
«» »
Ancak, belirttiğimiz gibi, önerilen uygulama, sayı işaretini her satırın başına yazmaktır.

# Yazdırma komutu ekrana metin yazdırır.
Listeler, öğelerin gruplarıdır.
Fonksiyonlar, bir görevi yerine getiren ve yeniden kullanılabilen küçük programlardır.
# Demetler değiştirilemezdir.

Yorumların özellikleri şunlardır:

  • Bunlar, kodun belirli bölümlerini açıklamak için kullanılır.
  • Yorumlandıktan sonra program tarafından göz ardı edilirler.
  • Bunlar, çalışma zamanında kodun kendisinden okunamaz.

Fonksiyonlar, nesneler, sınıflar, metotlar ve modüller (modülleri ileriki yazılarda ele alacağız) söz konusu olduğunda, docstring'ler kullanılabilir. Bunlar, fonksiyonun ne yaptığını, hangi parametreleri aldığını ve hangi değerleri sakladığını kısaca açıklayan, fonksiyonun başına yerleştirilen metin dizeleridir. Python'ın bunu bir docstring olarak tanıması için, metnin başında ve sonunda üç tırnak işareti bulunmalıdır.

Bir sonraki yazımızda docstring'lerin nasıl kullanılacağını açıklayacağız.