Python işlevlerinin temelleri

Tamamlandı

İşlevler, Python'ın programlama temellerini öğrendiklerinden sonraki adımdır. İşlev, en basit biçimiyle her zaman bir değer (veya değerler) döndüren kod içerir. Bazı durumlarda, bir işlevin isteğe bağlı veya gerekli girişleri de vardır.

Programın diğer bölümlerini çoğaltan kod yazmaya başladığınızda, kodu bir işleve ayıklamak için mükemmel bir fırsat haline gelir. İşlevler aracılığıyla ortak kodu paylaşmak yararlı olsa da, parçaları daha küçük (daha okunabilir) işlevlere ayıklayarak kodun boyutunu sınırlayabilirsiniz.

Yinelemeyi önleyen ve daha küçük işlevler kullanarak büyük işlevleri engelleyen programlar daha okunabilir ve sürdürülebilirdir. Ayrıca, işler düzgün çalışmadığında hata ayıklamak da daha kolaydır.

İşlev girişleriyle ilgili çeşitli kurallar, işlevlerin sunduğu her şeyden tam olarak yararlanmanız açısından kritik öneme sahiptir.

Önemli

Hangi işlevlerin içinde yer alacağını açıklamak için giriş terimini kullansak da, bu öğelere genellikle bağımsız değişken veya parametre adı verilir. Bu modülde tutarlılık için girişlere bağımsız değişken olarak başvuracağız.

Bağımsız değişken içermeyen işlevler

İşlev oluşturmak için anahtar sözcüğünü def ve ardından bir ad, parantez ve ardından işlev koduyla gövdeyi kullanırsınız:

def rocket_parts():
    print("payload, propellant, structure")

Bu durumda, rocket_parts işlevin adıdır. Bu adın ardından boş ayraçlar eklenir ve bu da bağımsız değişkenin gerekli olmadığını gösterir. Sonuncusu, dört boşlukla girintili koddur. işlevini kullanmak için parantezleri kullanarak adıyla çağırmanız gerekir:

rocket_parts()
payload, propellant, structure

rocket_parts() İşlev herhangi bir bağımsız değişken almaz ve bir deyimi yazdırır. İşlevin döndüreceği bir değer kullanmanız gerekiyorsa işlev çıkışını bir değişkene atayabilirsiniz:

output = rocket_parts()
payload, propellant, structure
output is None
True

değişkeninin değerinin output olması Noneşaşırtıcı görünebilir. Bunun nedeni, işlevin rocket_parts() açıkça bir değer döndürmemesidir. Python'da bir işlev açıkça bir değer döndürmezse , örtük olarak döndürür None. İşlevi yazdırmak yerine dizeyi döndürecek şekilde güncelleştirmek değişkenin output farklı bir değere sahip olmasına neden olur:

def rocket_parts():
    return "payload, propellant, structure"
output = rocket_parts()
output
payload, propellant, structure

Bir işlevin değerini kullanmanız gerekiyorsa, bu işlevin açıkça döndürülmesi gerekir . Aksi takdirde döndürülür None .

Not

Her zaman bir işlevin dönüşünü atamanız gerekmez. Bir işlevin açıkça bir değer (veya değer) döndürmediği çoğu durumda, döndürülen örtülü None öğeyi atamanız veya kullanmanız gerekmez.

Gerekli ve isteğe bağlı bağımsız değişkenler

Python'da çeşitli yerleşik işlevler için bağımsız değişkenler gerekir. Bazı yerleşik işlevler bağımsız değişkenleri isteğe bağlı hale getirir. Yerleşik işlevler hemen kullanılabilir, bu nedenle bunları açıkça içeri aktarmanız gerekmez.

Bağımsız değişken gerektiren yerleşik bir işleve örnek olarak verilmiştir any(). Bu işlev yinelenebilir bir (örneğin, liste) alır ve yinelenebilir Trueöğelerden biri ise döndürürTrue. Aksi takdirde döndürür False.

any([True, False, False])
True
any([False, False, False])
False

Herhangi bir bağımsız değişken olmadan çağırırsanız any() , yararlı bir özel durum oluşturulur. Hata iletisinde en az bir bağımsız değişkene ihtiyacınız olduğu açıklanır:

 any()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: any() takes exactly one argument (0 given)

adlı str()başka bir yerleşik işlev kullanarak bazı işlevlerin isteğe bağlı bağımsız değişkenlerin kullanılmasına izin verdiği doğrulayabilirsiniz. Bu işlev bağımsız değişkenden bir dize oluşturur. Hiçbir bağımsız değişken geçirilmediyse boş bir dize döndürür:

str()
''
str(15)
'15'