‫Argümanlar ve anahtar kelime argümanları denen bir şeyden bahsedelim.
‫Yani, bunu daha önce de gördük.
‫Doğru.
‫Bir işlevi var.
‫Aslında args ve star star anahtar kelimesi args olarak adlandırılan bu özel karakterleri kullanabiliriz.
‫Bunları nasıl kullanabiliriz?
‫Bir bakalım.
‫Bir fonksiyon deneyelim.
‫Diyelim ki tanımlayalım ve buna süper funk diyelim.
‫Bir tür argüman alan süper fonksiyon için.
‫Ve bu argümanlar bize ulaşacak.
‫Ve unutmayın, her ne kadar bu yaylara
‫Bunun kendisi bir parametredir, hatırladınız mı?
‫Ancak diyelim ki sadece bazı argümanları döndürmek istiyoruz ve neden bazılarının bu işlevi tanımlamamız gerekmediğini merak ediyor
‫olabilirsiniz.
‫Aslında, burada görebileceğiniz gibi Python'da bazıları var.
‫Böylece sadece bazı argümanları döndürebiliriz.
‫Şunu deneyelim.
‫Diyelim ki süper func.
‫Ve ona argüman ver.
‫Bir, iki, üç, dört, beş.
‫Eğer çalıştır'a tıklarsam.
‫Hmm.
‫Havaya giriyorum süper funk bir pozisyonel argüman alıyor ama beş tane verildi ve bu mantıklı değil mi?
‫Burada yalnızca bir parametrem var, o da kabul ettiği konumsal bir argüman.
‫Ve bunu toplamaya çalışıyorum, böylece sadece bir tane alıyor, ama bilmediği tüm bu şeylere veriyorum.
‫İşte bu noktada buraya bir yıldız ekleyerek bunun gibi bir şey kullanabiliriz.
‫Diyoruz ki, hey, bu, bunun gibi herhangi bir sayıda konumsal argümanı kabul edebilir.
‫Ne kadar istersem.
‫Aslına bakarsanız, bunun çıktısını alalım.
‫Eğer yıldız yaylarını yazdırırsam ve bu fonksiyonu çalıştırırsak.
‫Baskı yıldız yaylarının bize bir, iki, üç, dört, beş verdiğini görüyoruz.
‫Bunlar aldığımız tüm parametreler veya argümanlardır.
‫Ve eğer buradaki yıldızı kaldırırsam ve Çalıştır'a tıklarsam.
‫Şuna bak.
‫Aslında bunu bir tuple olarak alıyorum.
‫Yani bu fonksiyonun içindeki args, ona verdiğim bir argüman çiftidir.
‫Bir, iki, üç, dört, beş.
‫Yani bir, iki, üç, dört, beş üçlüsünden bazıları bize doğru cevabı verecektir.
‫Bizim için basacak.
‫Cevap.
‫15.
‫Çok, çok havalı.
‫Bu şekilde genişletebiliriz.
‫Ve herhangi bir sayıda argüman kabul edebilen bir fonksiyona sahip olmak için yıldız argümanlarımızı kullanın.
‫Peki bu ne şimdi?
‫Şey, bu.
‫Anahtar kelime argümanlarını kullanmamıza izin verir.
‫Örneğin, diyelim ki yıldız yıldız anahtar kelime yaylarım şu şekilde.
‫Ve bu arada, bu teknik olarak herhangi bir şey olabilir.
‫Yani bu oluşturduğumuz bir değişken.
‫İstersem hoo olarak adlandırabilirim, ancak standart args ve anahtar kelime args olarak adlandırmaktır çünkü diğer geliştiriciler bunu bu şekilde
‫kullanıyor ve Python topluluğunda bu şekilde yapılıyor.
‫Şimdi anahtar kelime yaylarıyla, tahmin edebileceğiniz gibi, num one equals gibi anahtar kelimeler ekleyebilirim.
‫Beş ve sonra num iki eşittir on.
‫Böylece anahtar kelime args'yi yazdırırsam ve çalıştır'a tıklarsam.
‫Sözlükte hiç yok.
‫Bir eşittir beş ve şimdi iki eşittir on.
‫Böylece aslında anahtar kelime arg'larındaki öğelerin toplamı artı toplamı gibi bir şey yapabilirim.
‫Ve değerleri alın.
‫Doğru.
‫Bunu daha önce de gördük.
‫Ve bunu alıp bir for döngüsü yapalım ve anahtar kelime yaylarındaki öğelere nokta değerleri diyelim.
‫Buradaki ve buradaki değerleri almayı unutmayın, sadece toplamları toplayın.
‫Diyelim ki burada toplam eşittir veya artı eşittir öğeleri var ve bir toplam ekleyeceğiz.
‫Burada başlangıçta sıfırdır, böylece bazıları.
‫Bazı argümanlar artı toplam olacak.
‫Eğer bunu çalıştırırsam.
‫Ben 30 alıyorum.
‫Şu anda biraz kafa karıştırıcı görünüyor.
‫Hadi üzerinden geçelim.
‫Bu konumsal argümanları almamızı ve her şeyi toplamamızı sağlayan yıldız yaylarımız var.
‫Ayrıca, herhangi bir sayıda anahtar kelime argümanını almamıza ve anahtar kelime yayları olarak gelen bir sözlük elde etmemize ve daha sonra bunları istediğimiz
‫gibi kullanmamıza olanak tanıyan anahtar kelime yaylarımız da var.
‫Bizim durumumuzda, tüm değerler üzerinde döngü yapıyoruz, yani anahtar kelime yay değerlerindeki öğeler
‫ve sonra tüm bu öğeleri toplayacağım.
‫Bir toplam alın ve sadece toplamı döndürün.
‫Şimdi bu yine son derece kullanışlıdır çünkü Superfund'umuz artık istediğimiz kadar argüman, istediğimiz kadar konumsal
‫ve anahtar kelime argümanı alabilir.
‫Şimdi, son bir şey.
‫Burada parametrelerimiz için yapabileceğimiz bir sıralama rolü vardır.
‫Doğru.
‫Yani parametrelerimizde kuralın ilk sırası budur.
‫Gerçek parametrelerimize sahibiz.
‫Daha sonra yıldız yayları, ardından varsayılan parametreler yapabiliriz.
‫O zaman Star.
‫Yıldız.
‫Anahtar kelime yayları.
‫Size ne demek istediğimi göstereyim.
‫Bu fonksiyonu tanımlamak istiyorsak, ona diyelim ki isim parametresi verdiğimizden
‫emin olmak isteriz.
‫Bu yıldız yaylarından önce gelmeli.
‫Ve varsayılan parametrelerimiz varsa, bu genellikle yaylardan sonra, ancak anahtar kelime yaylarından önce gelmelidir.
‫Eğer yaparsam, eşittir yüksek diyelim ve buraya bir virgül eklediğimizden emin olalım.
‫Şimdi kuralı takip ediyoruz.
‫Ve bu arada, aslında asla böyle bir fonksiyon yazmazsınız çünkü açıkçası çok kafa karıştırıcı
‫görünüyor.
‫Genellikle bunlardan sadece ikisini ya da belki sadece birini kullanırsınız.
‫Ancak bu şekilde bu fonksiyonu name ile çağırabilirim ve sonra args'ım, sonra varsayılan parametrem, ki bu da I equal to high
‫olacak, ki diyelim ki bunu geçmiyoruz bile.
‫Ve sonra bu var.
‫Yani burada koşarsak.
‫Bu hala çalışıyor.
‫Sadece isim ve ben kullanmıyoruz.
‫Ancak params args, varsayılan parametreler ve ardından anahtar kelime arx kuralını izlediğimi görüyorsunuz.
‫Tamam.
‫Umarım bundan sonra başınız çok fazla ağrımaz.
‫Biraz ara verin, bir sonrakinde görüşürüz.
‫Güle güle.