Python varsayılan argümanları

Python işlevleri ve meth

Python işlevinde bir argümanın varsayılan bir değeri olabilir. Varsayılan değerlere sahip argümanlar belirtirseniz, bunlar varsayılan değerleri olmayan argümanlardan sonra gelmelidir. Aksi takdirde, “SyntaxError: varsayılan olmayan bağımsız değişken, varsayılan bağımsız değişkeni takip eder” error.

Bu kılavuzda, bu hatanın ne anlama geldiği ve neden ortaya çıktığı hakkında konuşuyoruz. Bunu kodunuzda nasıl çözeceğinizi anlamanıza yardımcı olmak için bu hatanın bir örneğini inceliyoruz.




SyntaxError: varsayılan olmayan bağımsız değişken, varsayılan bağımsız değişkeni takip eder

Python, değişkenler bir işlev çağrısında göründükleri sırayla.

Varsayılan bağımsız değişkenler, varsayılan olmayan bağımsız değişkenlerden önce gelmelidir. Bunun nedeni, varsayılan olmayan bağımsız değişkenlerin zorunlu olmasıdır.

Varsayılan değerler, belirtilmemiş olsa bile bir değere sahipken, varsayılan olmayan bir bağımsız değişken yoktur. Her biri için bir değer belirtmeniz gerekiyorsa, varsayılan argümanların bir amacı yoktur.

Şu kodu göz önünde bulundurun:

def test_function(score=25, class=6, name): pass test_function("John", 22)

Bu kodda Python, “John” “name” veya "skor". İşlev çağrımızdaki her argümana atanacak değerleri açıkça kullanmalıyız:

 test_function(name="John", score=22)

Bu sözdizimi, varsayılan bağımsız değişkenleri varsayılan olmayanlardan önce belirtmenizden daha ayrıntılıdır.

Katılımcıların %81'i, bir eğitim kampına katıldıktan sonra teknik iş beklentileri konusunda kendilerini daha güvende hissettiklerini belirtti. Bugün bir eğitim kampı ile eşleşin.

Ortalama bir eğitim kampı mezunu, bir eğitim kampına başlamaktan ilk işini bulmaya kadar, kariyer geçişinde altı aydan az zaman harcadı.

Alternatif olarak, her argüman için değer. Bu, varsayılan değerlere sahip bağımsız değişkenlere sahip olma amacını ortadan kaldırır.

Bir işlevde, bağımsız değişkenlerin görünmesi gereken sıra:

Eğer bu sıraya uymazsanız Python bir hata mesajı verir.




Örnek Senaryo

Öğrencinin bir testte kazandığı yüzdeyi hesaplayan bir program yazın.


/p>

Öğrencinin bir testte kazandığı yüzdeyi hesaplayan bir işlev tanımlayarak başlayın:

def hesapla_yüzdesi(out_of=100, puan): dönüş out_of / puan * 100

div>

Fonksiyonumuz iki argümanı kabul eder: bir öğrencinin aldığı puan ve kaç puanın mevcut olduğu. Ardından, bir kullanıcıdan test puanını ve testte mevcut olan puan sayısını sunmasını isteyin:

user_score = float(input("Testten kaç puan aldınız? ")) total_available = float(input( "Testte kaç puan vardı? "))

Kullanıcının eklediği her iki değeri de kayan nokta sayılarına

dönüştürürüz. bir> yani Onlarla matematiksel bir işlem yapabiliriz. Ardından, fonksiyonumuzu çağırın ve kullanıcımızın fonksiyonumuz aracılığıyla girdiği değerleri iletin:

Programımız bir öğrencinin bir testte kazandığı yüzdeyi hesapladıktan sonra, bu değeri konsola yazdırırız. round() yöntemini kullanarak yüzdeyi iki ondalık basamağa yuvarlarız. Kodumuzu çalıştırın ve ne olduğunu görün:

 Dosya "main.py", satır 1 def hesapla_percentage(out_of= 100, puan): ^ SyntaxError: varsayılan olmayan bağımsız değişken, varsayılan bağımsız değişkeni takip eder

Kodumuz bir hata döndürür. Gelin bu sorunu çözelim.




Çözüm

Hesap_percentage işlevimizde varsayılan olmayan bir bağımsız değişkenden önce varsayılan bir bağımsız değişken belirledik:

def hesapla_yüzde(out_of=100, puan):

Bu, varsayılan bir bağımsız değişkene sahip olma amacını gereksiz kılar. Python, “score” için hangi değerin ayarlanması gerektiğini nasıl bilecek? sadece bir değer belirtirsek?

Bu sorunu çözmek için, varsayılan argümanlarımız en son görünecek şekilde argümanlarımızın sırasını değiştirmeliyiz. Kodumuzu değiştirelim:

def hesapla_yüzde(skor, out_of=100):

Kodumuzu çalıştırmayı deneyin:

Sınavdan kaç puan aldınız? 67 Sınavda kaç puan kaldı? 100 Testinizden %67,0 puan aldınız.

Kodumuz, bir öğrencinin sınavda kazandığı yüzdeyi başarıyla hesaplar.





Sonuç

Python “SyntaxError: varsayılan olmayan bağımsız değişken, varsayılan bağımsız değişkeni takip eder” varsayılan olmayan bir bağımsız değişkenden önce varsayılan bir bağımsız değişken belirttiğinizde hata oluşur.

Bu hatayı çözmek için, bir fonksiyondaki tüm argümanları, varsayılan argümanlar varsayılan olmayan argümanlardan sonra gelecek şekilde düzenlediğinizden emin olun.Argümanların görünmesi gereken sıra: varsayılan olmayan, varsayılan, anahtar kelime, değişken anahtar kelime.

Artık bu yaygın Python hatasını uzman kodlayıcı gibi çözmeye hazırsınız!< /p>



Python varsayılan argümanları: StackOverflow Questions

Tutorials