Bir sınıf nesnesinin kabul ettiği argumanlar, __init__()
adlƒ± bir i≈ülevden geçirilir. Bu i≈ülevi sƒ±nƒ±f bildiriminizde yanlƒ±≈ü yazarsanƒ±z, "TypeError: object() arguman almaz‚" kodunuzu çalƒ±≈ütƒ±rdƒ±ƒüƒ±nƒ±zda hata veriyor.
Bu kƒ±lavuzda, bu hatanƒ±n ne anlama geldiƒüinden ve neden kar≈üƒ±la≈üabileceƒüinizden bahsediyoruz. Nasƒ±l duzelteceƒüinizi anlamanƒ±za yardƒ±mcƒ± olmak için bu hatanƒ±n bir √∂rneƒüini inceleyeceƒüiz.
TypeError: object() arguman almaz
Bir sƒ±nƒ±fƒ±n nesneleri isteƒüe baƒülƒ± olarak argumanlarƒ± kabul edebilir. Bu baƒüƒ±msƒ±z deƒüi≈ükenler, bir nesne içindeki deƒüerleri ayarlamak için kullanƒ±lƒ±r. A≈üaƒüƒ±daki kodu g√∂z √∂nunde bulundurun:
__init__method, "self.name‚" Sƒ±nƒ±fƒ±mƒ±zdaki deƒüi≈üken. Bu deƒüi≈ükene sƒ±nƒ±fƒ±mƒ±zdaki herhangi bir metotta ba≈üvurabiliriz.
__init__ metodu özel bir metottur. Genellikle yapıcı olarak adlandırılır. Yapıcı yöntemi doğru yazılmalıdır, aksi takdirde bir sınıfın nesnesini bildirdiğiniz bir ifadeye herhangi bir arguman iletemezsiniz.
Ba≈üvuru için, __init__ y√∂ntemi ≈üu ≈üekilde yazƒ±lƒ±r:
ƒ∞ki alt çizgi, ardƒ±ndan "init‚", ardƒ±ndan iki altçizgi gelir.
"TypeError: object() hiçbir arguman almaz‚" hata, uygun olmayan girintilerden de kaynaklanabilir. __init__ y√∂ntemini doƒüru yazdƒ±ysanƒ±z, sƒ±nƒ±fƒ±nƒ±zda tutarlƒ± bo≈üluklar ve sekmeler kullandƒ±ƒüƒ±nƒ±zdan emin olmak için kontrol edin.
Katƒ±lƒ±mcƒ±larƒ±n %81’i bir eƒüitim kampƒ±na katƒ±ldƒ±ktan sonra teknik i≈ü beklentileri konusunda daha emin hissettiklerini belirtti. Bugun 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ƒ±.
Olu≈üturacaƒüƒ±z. elektronik maƒüazasƒ±ndaki bir urunle ilgili bilgileri izleyen bir program. Ba≈ülamak için bir sƒ±nƒ±f tanƒ±mlayƒ±n. Bu sƒ±nƒ±f, urunlerimiz için plan g√∂revi g√∂rur:
Sƒ±nƒ±fƒ±mƒ±z iki y√∂ntem içeriyor. ƒ∞lk y√∂ntem yapƒ±cƒ±mƒ±zdƒ±r. Bu metot, sƒ±nƒ±fƒ±mƒ±zƒ±n nesnelerinin saklayabileceƒüi tum deƒüerleri tanƒ±mlar. ƒ∞kinci y√∂ntem, bir urunun fiyatƒ±nƒ± g√∂rmemizi saƒülar.