Python listesi nesnesi

Python işlevleri ve meth

Kıvrımlı parantezler ( () ) kullanarak bir listedeki öğelere erişmeye çalıştığınızda Python bir hata döndürür. Bunun nedeni Python'un bir işlev çağırmaya çalıştığınızı düşünmesidir.

Bu kılavuzda Python “typeerror: ‘list’ nesne çağrılabilir değil” hata ve neden yükseltildi. Bu hatayı nasıl düzelteceğinizi öğrenmenize yardımcı olacak bir örnek senaryo üzerinden geçeceğiz. Haydi başlayalım!




Sorun: typeerror: ‘list’ nesne çağrılabilir değil

Python bu hatada bilmemiz gereken her şeyi bize zaten söylüyor:

typeerror: 'list' nesnesi çağrılabilir değil

Hata türüne bir göz atın: TypeError. Bu, Python hatalarının en yaygın türlerinden biridir. Bize, değerin depolandığı veri türü için mevcut olmayan bir yöntemi kullanarak bir değeri değiştirmeye çalıştığımızı söylüyor.

Hata mesajımız, aramaya çalıştığımızı söylüyor. bir Python liste nesnesi. Bu, ona bir liste yerine bir işlev gibi davrandığımız anlamına gelir.

Bu hata, erişim için küme parantezleri kullandığınızda ortaya çıkar. bir listedeki öğeler. Aşağıdaki çörekler listesini göz önünde bulundurun:

cones = ["Kiraz", "Elma ve Tarçın" , "Plain", "Peynir"]

Bu listedeki öğelere erişmek için, erişmek istediğimiz değerin dizin numarasını köşeli parantez içinde belirtmeliyiz:

print(scones[0])

Bu şunu döndürür: Cherry. 0, listemizdeki ilk öğenin konumudur, “Kiraz”.

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ştirin.

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ı.

Yapacağız. Bir isim listesini büyük harf kullanan bir Python programı. Bu isimlerin ilk harflerini büyük yazmalıyız çünkü isim kartlarına basılacaklar.


Bir ad listesi bildirerek başlayın:

names = ["Peter Geoffrey", "Dakota Williams", "Rebecca Lee"]

Ardından, bu ad listesi boyunca yinelenen bir for döngüsü oluşturun. Her adı en üste çevireceğiz ve küçük harf adını listedeki büyük harfle değiştirin:

aralıktaki n için( len(isimler)): isimler[n] = isimler(n).upper() print(names(n)) print(names)

range() yöntemi. Ardından, her adın değerini büyük harf eşdeğeriyle değiştirmek için atama operatörünü kullanın. Python upper() yöntemi, her adı üst karaktere dönüştürür se.

Ardından, yeni adı konsola yazdırın. Döngümüz çalıştığında, gözden geçirilmiş listenin tamamını konsola yazdırın.

Kodumuzu çalıştıralım:

İzleme (en son çağrı son): Dosya "main.py", satır 4,  isimler[n] = isimler(n).upper() TypeError: 'list' nesnesi çağrılabilir değil

Beklendiği gibi bir hata aldık. Gelin bu sorunu çözelim.

Listedeki öğelere erişmek için köşeli parantez kullanın. Python'daki işlevleri çağırmak için küme parantezleri kullanılır. Kodumuzdaki sorun, listemizdeki öğelere erişmek için küme parantezleri kullandığımız için bir listeyi işlev olarak çağırmaya çalışmamızdır.

Kodumuzda, aşağıdakileri yapmak için küme parantezleri kullanın. bir liste öğesine iki yerden erişin:

for in range(len(names)): isimler[n ] = name(n).upper() print(names(n))

Köşeli parantez kullanmak için name(n) kodunu değiştirmeliyiz: 

aralıktaki n için(len(isimler)): isimler[n] = isimler[n].upper() yazdır (names[n])

Bu, Python'a “n” dizin konumundaki öğeye erişmek istediğimizi söyler. “names” listesinde.

Kodumuzu az önce tartıştığımız uygulanabilir revizyonlarla çalıştırın:

PETER GEOFFREY DAKOTA WILLIAMS REBECCA LEE ['PETER GEOFFREY', 'DAKOTA WILLIAMS', 'REBECCA LEE']

Bu sefer başarılı bir yanıt geri dönüyor . Her ad büyük harflere dönüştürülür.


Bir ismin büyük harfli hali, ismin cümle-büyük harfli halinin yerine geçer.Ardından her ismi konsola yazdırırız.Programımız bitince yazdırırız. Listemizde değiştirilip değiştirilmediklerini kontrol etmek için “names” içindeki tüm isimlerin bir listesini çıkarın.