Python Listesi: Anlama, Sonlandırma, Sıralama, Uzunluk, Ters ÖRNEKLER

İçindekiler:

Anonim

Python Listesi nedir?

Bir liste tam olarak göründüğü gibidir, farklı Python nesneleri içeren bir kaptır, bunlar tamsayılar, kelimeler, değerler vb. Olabilir. Diğer programlama dillerindeki bir dizinin eşdeğeridir. Köşeli parantezlerle gösterilir (ve bu, onu parantezlerle ayrılmış tuplelardan ayıran özelliklerden biridir). Aynı zamanda değiştirilebilir, yani değiştirilebilir veya güncellenebilir; değişmez olan tupleların aksine.

Bu python eğitiminde şunları öğreneceksiniz:

  • Python Listesi nedir?
  • Python listelerine örnekler:
  • Listelerdeki değerlere erişim
  • Liste dilimleme
  • Listeleri güncelleme
  • Liste öğelerini silme
  • Liste öğeleri ekleme
  • Yerleşik işlevleri (yöntemleri) listeleyin
  • Listeler arasında dolaşmak
  • Anlayışları listeleyin

Python listelerine örnekler:

Python listeleri homojen olabilir, yani aynı tür nesneleri içerebilirler; veya farklı türde nesneler dahil olmak üzere heterojen.

Homojen listelerin örnekleri şunları içerir:

list of integers = [1, 2, 3, 8, 33]list of animals = ['dog', 'cat', 'goat']list of names = ['John', 'Travis', 'Sheila']list of floating numbers = [2.2, 4.5, 9.8, 10.4]

Heterojen listelerin örnekleri şunları içerir:

[2, 'cat', 34.33, 'Travis'][2.22, 33, 'pen']

Listelerdeki değerlere erişim

Listeler içindeki değerlere erişmek için, listelerin içindeki nesnelerin indeksi kullanılabilir. Python listelerindeki bir dizin, bir öğenin sıralı bir liste içindeki konumunu ifade eder. Örneğin:

list = [3, 22, 30, 5.3, 20]
  • Yukarıdaki listedeki ilk değer olan 3'ün indeksi 0'dır
  • İkinci değer olan 22'nin indeksi 1'dir
  • Üçüncü değer olan 30'un indeksi 2'dir

ve bunun gibi. Listedeki değerlerin her birine erişmek için şunları kullanırsınız:

list[0] to access 3list[1] to access 22list[2] to access 30list[3] to access 5.3list[4] to access 20

Bir listenin son üyesine de -1 indeksi kullanılarak erişilebilir. Örneğin,

list[-1] = 20

Liste dilimleme

Liste dilimleme, bir listenin bir alt kümesini bölme yöntemidir ve liste nesnelerinin indisleri de bunun için kullanılır. Örneğin, yukarıdaki aynı liste örneğini kullanarak;

list[:] = [3, 22, 30, 5.3, 20] (all the members of the list];list[1:3] = [22, 30] (members of the list from index 1 to index 3, without the member at index 3);list[:4] = [3, 22, 30, 5.3] (members of the list from index 0 to index 4, without the member at index 4)list[2:-1] = [30, 5.3] (members of the list from index 2, which is the third element, to the second to the last element in the list, which is 5.3).

Python listeleri üst sınıra özeldir ve bu, liste dilimleme sırasında son dizinin genellikle göz ardı edildiği anlamına gelir. Bu yüzden

list[2:-1] = [30, 5.3] 
ve [30, 5.3, 20] değil. Aynısı, yukarıda verilen tüm diğer liste dilimleme örnekleri için de geçerlidir.

Listeleri güncelleme

Diyelim ki bir listeniz var = [fizik, kimya, matematik] ve listeyi [biyoloji, kimya, matematik] olarak değiştirmek, endeks 0'daki üyeyi etkili bir şekilde değiştirmek istiyorsunuz. Bu, bu dizini, istediğiniz yeni üye.

Yani,

list = [physics, chemistry, mathematics]list[0] = biologyprint(list)

Çıktı: [biyoloji, kimya, matematik]

Bu, 0 dizinindeki (fizik) üyeyi istediğiniz yeni değerle (kimya) değiştirir. Bu, değiştirmek istediğiniz listenin herhangi bir üyesi veya alt kümesi için yapılabilir.

Başka bir örnek vermek gerekirse; Diyelim ki tamsayı adında ve [2, 5, 9, 20, 27] sayılarını içeren bir listeniz var. Bu listedeki 5'i 10 ile değiştirmek için, bunu şu şekilde yapabilirsiniz:

 integers = [2, 5, 9, 20, 27]integers[1] = 10print(integers)>>> [2, 10, 9, 20, 27]

27 olan tamsayılar listesinin son üyesini 30,5 gibi ücretsiz bir sayı ile değiştirmek için şunu kullanırsınız:

 integers = [2, 5, 9, 20, 27]integers[-1] = 30.5print(integers)>>> [2, 5, 9, 20, 30.5]

Liste öğelerini silme

Liste öğelerini silmek için 3 Python yöntemi vardır: list.remove (), list.pop () ve del operatörü. Remove yöntemi, çıkarılacak belirli öğeyi bir bağımsız değişken olarak alırken, pop ve del, bağımsız değişken olarak kaldırılacak öğenin dizinini alır. Örneğin:

liste = [3, 5, 7, 8, 9, 20]

3'ü (1. element) listeden silmek için şunları kullanabilirsiniz:

  • list.remove (3) veya
  • list.pop [0] veya
  • listeyi sil [0]

Dizin 3'teki 8 maddeyi listeden silmek için şunları kullanabilirsiniz:

  • list.remove (8) veya
  • list.pop [3]

Liste öğeleri ekleme

Öğeleri bir listeye eklemek için ekleme yöntemi kullanılır ve bu, öğeyi listenin sonuna ekler.

Örneğin:

list_1 = [3, 5, 7, 8, 9, 20]list_1.append(3.33)print(list_1)>>> list_1 = [3, 5, 7, 8, 9, 20, 3.33]list_1.append("cats")print(list_1)>>> list_1 = [3, 5, 7, 8, 9, 20, 3.33, "cats"]

Yerleşik işlevleri (yöntemleri) listeleyin

Aşağıda, açıklamalarıyla birlikte yerleşik işlevlerin ve yöntemlerin bir listesi verilmiştir:

  • len (liste): bu, çıktı olarak listenin uzunluğunu verir. Örneğin:
numbers = [2, 5, 7, 9]print(len(numbers))>>> 4
  • max (liste): Listedeki öğeyi maksimum değerle döndürür. Örneğin:
numbers = [2, 5, 7, 9]print(max(numbers))>>> 9
  • min (liste): Listedeki öğeyi minimum değerle döndürür. Örneğin:
numbers = [2, 5, 7, 9]print(min(numbers))>>> 2
  • list (tuple): bir demet nesnesini bir listeye dönüştürür. Örneğin;
animals = (cat, dog, fish, cow)print(list(animals))>>> [cat, dog, fish, cow]
  • list.append (element): öğeyi listeye ekler. Örneğin;
numbers = [2, 5, 7, 9]numbers.append(15)print(numbers)>>> [2, 5, 7, 9, 15]
  • list.pop (dizin): belirtilen dizindeki öğeyi listeden kaldırır. Örneğin;
numbers = [2, 5, 7, 9, 15]numbers.pop(2)print(numbers)>>> [2, 5, 9, 15]
  • list.remove (element): elemanı listeden siler. Örneğin;
values = [2, 5, 7, 9]values.remove(2)print(values)>>> [5, 7, 9]
  • list.reverse (): listenin nesnelerini ters çevirir. Örneğin;
values = [2, 5, 7, 10]values.reverse()print(values)>>> [10, 7, 5, 2]
  • list.index (element): listedeki bir elemanın dizin değerini almak için. Örneğin;
animals = ['cat', 'dog', 'fish', 'cow', 'goat']fish_index = animals.index('fish')print(fish_index)>>> 2
  • toplam (liste): Değerlerin tümü sayı ise (tamsayılar veya ondalıklar), listedeki tüm değerlerin toplamını almak için. Örneğin;
values = [2, 5, 10]sum_of_values = sum(values)print(sum_of_values)>>> 17

Liste, dize gibi sayı olmayan herhangi bir öğe içeriyorsa, toplama yöntemi çalışmayacaktır. Şunu söyleyen bir hata alırsınız: " TypeError : +: 'int' ve 'str' için desteklenmeyen işlenen türleri"

  • list.sort (): artan veya azalan sırayla tam sayıların, kayan noktalı sayıların veya dizelerin listesini düzenlemek için. Örneğin:
values = [1, 7, 9, 3, 5]# To sort the values in ascending order:values.sort()print(values)>>> [1, 3, 5, 7, 9]

Başka bir örnek:

values = [2, 10, 7, 14, 50]# To sort the values in descending order:values.sort(reverse = True)print(values)>>> [50, 14, 10, 7, 2]

Dizge listesi, alfabetik olarak veya dizelerin uzunluğuna göre de sıralanabilir. Örneğin;

# to sort the list by length of the elementsstrings = ['cat', 'mammal', 'goat', 'is']sort_by_alphabet = strings.sort()sort_by_length = strings.sort(key = len)print(sort_by_alphabet)print(sort_by_length)>>> ['cat', 'goat', 'is', 'mammal']['is', 'cat', 'goat', 'mammal']

Aynı listeyi 'dizeler' kullanarak alfabetik olarak sıralayabiliriz.

Listeler arasında dolaşmak

Listeler arasında döngü yapmak, Python'daki diğer döngü işlevleriyle aynı şekilde yapılabilir. Bu şekilde, bir listenin birden çok öğesi üzerinde aynı anda bir yöntem gerçekleştirilebilir. Örneğin:

liste = [10, 20, 30, 40, 50, 60, 70].

Bu listenin tüm öğeleri arasında dolaşmak ve diyelim ki, her öğeye 10 ekleyin:

for elem in list:elem = elem + 5print(elem)>>>>15253545556575

Listenin ilk üç öğesi arasında gezinmek ve hepsini silmek için;

for elem in list[:3]:list.remove(elem)>>>list = [40, 50, 60, 70]

Listedeki 3. öğeden (dizin 2) son öğeye döngü yapmak ve bunları new_list adlı yeni listeye eklemek için:

new_list = []for elem in list[2:]:new_list.append(elem)print(“New List: {}”.format(new_list))Output:New List: [30, 40, 50, 60, 70]

Bu şekilde, belirli bir işlemi gerçekleştirmek için bir listenin üyelerine herhangi bir yöntem veya işlev uygulanabilir. Listenin tüm üyelerinde veya liste dilimlemeyi kullanarak listenin bir alt kümesinde döngü yapabilirsiniz.

Anlamları Listeleme

Liste anlamaları, önceden oluşturulmuş dizileri kullanarak yeni diziler (listeler, sözlükler vb.) Oluşturmak için kullanılan Python işlevleridir. Daha uzun döngüleri azaltmaya ve kodunuzun okunmasını ve bakımını kolaylaştırmaya yardımcı olurlar.

Örneğin; Diyelim ki 1'den 9'a kadar tüm sayıların karelerini içeren bir liste oluşturmak istediniz:

list_of squares = []for int in range(1, 10):square = int ** 2list_of_squares.append(square)print(list_of_squares)List_of_squares using for loop:[1, 4, 9, 16, 25, 36, 49, 64, 81]

Aynı şeyi liste anlayışlarıyla yapmak için:

list_of_squares_2 = [int**2 for int in range(1, 10)]print('List of squares using list comprehension: {}'.format(list_of_squares_2))Output using list comprehension:[1, 4, 9, 16, 25, 36, 49, 64, 81]

Yukarıda görüldüğü gibi, liste anlamalarını kullanarak kodu yazmak geleneksel döngüleri kullanmaktan çok daha kısa ve ayrıca daha hızlıdır. Bu, döngülerin yerine liste anlamalarını kullanmanın yalnızca bir örneğidir, ancak bu çoğaltılabilir ve döngülerin de kullanılabileceği birçok yerde kullanılabilir. Bazen, özellikle kod karmaşıksa, for döngüsüyle gitmek daha iyi bir seçenektir, ancak çoğu durumda liste kavramaları kodlamanızı daha kolay ve daha hızlı hale getirecektir.

Aşağıda, bazı liste işlevlerini ve yöntemlerini ve bunların açıklamalarını içeren bir tablo bulunmaktadır.

Yerleşik İşlevler

FONKSİYON AÇIKLAMA
Yuvarlak () Bağımsız değişken olarak iletilen sayıyı belirtilen sayıda basamağa yuvarlar ve kayan nokta değerini döndürür
Min () belirli bir listenin minimum öğesini döndür
Maks () belirli bir listenin maksimum öğesini döndür
len () Listenin uzunluğunu verir
Numaralandır () Bu yerleşik işlev, bir yinelenebilir dosyadaki öğelerin hem değerlerini hem de dizinlerini oluşturur, bu nedenle manuel olarak saymamıza gerek yoktur.
Filtrele () bir listenin her bir öğesinin doğru olup olmadığını test eder
Lambda Bir def'in (işlevler oluşturmak için) sözdizimsel olmadığı yerlerde, bir liste değişmezi veya bir işlevin çağrı argümanları içinde görünebilen bir ifade
Harita() Verilen işlevi belirli bir yinelenebilir öğenin her bir öğesine uyguladıktan sonra sonuçların bir listesini döndürür
Biriktirmek() argümanında aktarılan belirli bir işlevi tüm liste öğelerine uygulayın, ara sonuçları içeren bir liste döndürür
Toplam () Listedeki tüm sayıların toplamını verir
Cmp () Bu, iki listeyi karşılaştırmak için kullanılır ve ilk liste ikinci listeden büyükse 1 döndürür.
Ekle Listelenecek öğeyi belirli bir konuma ekleyin

Liste Yöntemleri

FONKSİYON AÇIKLAMA
Ekle () Listenin sonuna yeni bir öğe ekler
Açık() Listedeki tüm öğeleri kaldırır
Kopyala () Orijinal listenin bir kopyasını verir
Genişlet () Listenin sonuna birçok öğe ekleyin
Miktar() Listedeki belirli bir öğenin oluşum sayısını verir
Dizin () Bir listenin belirli bir öğesinin dizinini verir
Pop() Belirli bir dizindeki listeden öğeyi siler (konuma göre silme)
Kaldırmak() Listeden belirtilen öğeyi siler (değere göre sil)
Ters() Listedeki öğelerin sırasını tersine çeviren yerinde tersine çevirme yöntemi

Özet

  • Bir liste tam olarak göründüğü gibi, farklı Python nesnelerini içeren, tam sayılar, kelimeler, değerler vb. Olabilen bir kaptır.
  • Python listeleri homojen olabilir, yani aynı tür nesneleri içerebilirler; veya farklı türde nesneler içeren heterojen.
  • Listeler içindeki değerlere erişmek için, listelerin içindeki nesnelerin indeksi kullanılabilir.
  • Liste dilimleme, bir listenin bir alt kümesini bölme yöntemidir ve liste nesnelerinin indisleri de bunun için kullanılır.
  • Liste öğelerini silmek için üç yöntem vardır: 1) list.remove (), 2) list.pop () ve 3) del operatörü
  • Ekleme yöntemi, elemanları eklemek için kullanılır. Bu, öğeyi listenin sonuna ekler.
  • Python programının döngüleme yöntemi aynı anda bir veri listesinin birden fazla öğesi üzerinde gerçekleştirilebilir.
  • Liste anlamaları, önceden oluşturulmuş dizileri kullanarak yeni diziler (listeler, sözlükler vb.) Oluşturmak için kullanılan Python işlevleridir.