Python Liste Anlama, Ekleme, Sıralama, Uzunluk [ÖRNEKLER]

Nedir Python Liste?

Bir liste tam olarak göründüğü gibidir; farklı içerikleri içeren bir kapsayıcıdır. Python nesneler, tam sayı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ış tuple'lardan ayıran niteliklerden biridir). Ayrıca değiştirilebilir, yani değiştirilebilir veya güncellenebilir; tuple'ların değişmez olmasının aksine.

Örnekleri arasında Python listeleri:

Python Listeler homojen olabilir, yani aynı tür nesneleri içerebilir; veya heterojen olabilir, yani farklı türde nesneleri içerebilir.

Homojen listelerin örnekleri şunlardır:

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 şunlardır:

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

Listelerdeki değerlere erişme

Listelerdeki değerlere erişmek için listelerin içindeki nesnelerin indeksi kullanılabilir. Bir indeks Python listeler, bir öğenin sıralı bir liste içindeki konumunu belirtir. Ö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 benzeri. Listedeki değerlerin her birine erişmek için şunları kullanırsınız:

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

Listenin son üyesine -1 indeksi kullanılarak da erişilebilir. Örneğin,

list[-1] = 20

Python Liste dilimleme

Liste dilimleme, bir listenin alt kümesini bölme yöntemidir ve liste nesnelerinin indeksleri 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 listeler ü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 değil [30, 5.3, 20]. Aynı durum yukarıda verilen diğer tüm liste dilimleme örnekleri için de geçerlidir.

Listeler güncelleniyor

Diyelim ki = [fizik, kimya, matematik] listeniz var ve listeyi [biyoloji, kimya, matematik] olarak değiştirmek ve 0 dizinindeki üyeyi etkili bir şekilde değiştirmek istiyorsunuz. Bu, bu dizini listeye atayarak kolayca yapılabilir. İstediğiniz yeni üye.

Yani,

list = [physics, chemistry, mathematics]
    list[0] = biology
    print(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 tam sayılar 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 şunu yapabilirsiniz:

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

>>> [2, 10, 9, 20, 27]

Tamsayılar listesinin son üyesi olan 27'yi 30.5 gibi serbest bir sayıyla değiştirmek için şunu kullanırsınız:

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

>>> [2, 5, 9, 20, 30.5]

Liste öğelerini silme

3 var Python liste öğelerini silme yöntemleri: list.remove(), list.pop() ve del operatörü. Remove yöntemi, kaldırılacak belirli öğeyi bir argüman olarak alırken pop ve del, kaldırılacak öğenin dizinini bir argüman olarak alır. Örneğin:

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

Listeden 3'ü (1. öğe) silmek için şunları kullanabilirsiniz:

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

Dizin 8'teki öğe olan 3'i listeden silmek için şunları kullanabilirsiniz:

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

Liste öğeleri ekleme

Bir listeye öğe 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 fonksiyonlar ve yöntemlerin bir listesi bulunmaktadır:

  • len(liste): bu listenin uzunluğunu çıktı olarak verir. Örneğin:
numbers = [2, 5, 7, 9]
print(len(numbers))
>>> 4
  • maksimum(liste): listedeki öğeyi maksimum değere sahip olarak döndürür. Örneğin:
numbers = [2, 5, 7, 9]
print(max(numbers))
>>> 9
  • dk(liste): listedeki öğeyi minimum değerle döndürür. Örneğin:
numbers = [2, 5, 7, 9]
print(min(numbers))
>>> 2
  • liste(demet): bir tuple nesnesini listeye dönüştürür. Örneğin;
animals = (cat, dog, fish, cow)
print(list(animals))
>>> [cat, dog, fish, cow]
numbers = [2, 5, 7, 9]
numbers.append(15)
print(numbers)
>>> [2, 5, 7, 9, 15]
  • liste.pop(indeks): belirtilen dizindeki öğeyi listeden kaldırır. Örneğin;
numbers = [2, 5, 7, 9, 15]
numbers.pop(2)
print(numbers)
>>> [2, 5, 9, 15]
values = [2, 5, 7, 9]
values.remove(2)
print(values)
>>> [5, 7, 9]
  • liste.reverse(): listedeki nesneleri tersine çevirir. Örneğin;
values = [2, 5, 7, 10]
values.reverse()
print(values)
>>> [10, 7, 5, 2]
  • liste.index(öğe): listedeki bir öğenin 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ı (tam sayı veya ondalık sayı) ise, 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

Listede dize gibi sayı olmayan herhangi bir öğe varsa toplam yöntemi çalışmaz. Şöyle bir hata alırsınız: “TypeError: +: 'int' ve 'str' için desteklenmeyen işlenen türleri”

  • list.sort(): tam sayıların, kayan noktalı sayıların veya dizelerin listesini artan veya azalan sırada 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]

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

# to sort the list by length of the elements
strings = ['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']

'strings' komutunu kullanarak aynı listeyi alfabetik olarak sıralayabiliriz.

Listeler arasında döngü yapmak

Listeler arasında döngü yapmak, diğer herhangi bir döngü işleviyle aynı şekilde yapılabilir. Python. Bu şekilde bir listenin birden fazla elemanı ü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 geçiş yapmak için, diyelim ki her öğeye 10 ekleyin:

for elem in list:
        elem = elem + 5
        print(elem)
    
    >>>>15
        25
        35
        45
        55
        65
        75

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

for elem in list[:3]:
    list.remove(elem)

    >>>list = [40, 50, 60, 70]

3 arasında döngü yapmak içinrd (indeks 2) listedeki son öğeye ekleyin ve bunları new_list adlı yeni bir listeye ekleyin:

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 üyeleri arasında döngü yapabilirsiniz veya liste dilimlemeyi kullanarak listenin bir alt kümesinde döngü yapabilirsiniz.

Anlamaları Listele Python

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

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

list_of squares = []
    for int in range(1, 10):
        square = int ** 2
        list_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 kavramaları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 kavrayışlarını kullanarak kod yazmak, geleneksel for döngülerini kullanmaktan çok daha kısadır ve ayrıca daha hızlıdır. Bu, for döngüleri yerine liste kavrayışlarını kullanmanın sadece bir örneğidir, ancak bu çoğaltılabilir ve for döngülerinin de kullanılabileceği birçok yerde kullanılabilir. Bazen, özellikle kod karmaşıksa, for döngüsü kullanmak daha iyi bir seçenektir, ancak birçok durumda, liste kavrayışları kodlamanızı daha kolay ve daha hızlı hale getirecektir.

Aşağıda bazı liste fonksiyonları ve yöntemleri ile bunların açıklamalarını içeren bir tablo bulunmaktadır.

Yerleşik İşlevler

FONKSİYONU 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 döndürür
Numaralandır() Bu yerleşik işlev, öğelerin hem değerlerini hem de dizinlerini yinelenebilir bir biçimde oluşturur, dolayısıyla manuel olarak saymamıza gerek kalmaz
Filtre() bir listenin her öğesinin doğru olup olmadığını test eder
Lambda Bir def'in (işlev oluşturmak için) sözdizimsel olmadığı yerlerde, bir liste değişmezinde veya bir işlevin çağrı bağımsız değişkenlerinde 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() bağımsız değişkeninde iletilen belirli bir işlevi tüm liste öğelerine uygulamak, ara sonuçları içeren bir liste döndürür
Toplam() Listedeki tüm sayıların toplamını döndürür
Cmp() Bu, iki listeyi karşılaştırmak için kullanılır ve ilk liste ikinci listeden büyükse 1 değerini döndürür.
Ekle Belirli bir konumda listelenecek öğeyi ekle

Liste Yöntemleri

FONKSİYONU AÇIKLAMA
Ekle() Listenin sonuna yeni bir öğe ekler
Temizlemek() Listedeki tüm öğeleri kaldırır
kopyala() Orijinal listenin bir kopyasını döndürür
Uzatmak() Listenin sonuna birçok öğe ekleyin
Saymak() Belirli bir öğenin listedeki oluşum sayısını döndürür
Dizin() Bir listenin belirli bir öğesinin dizinini döndürür
Pop() Belirli bir dizindeki listeden öğeyi siler (konuma göre sil)
Kaldırmak() Belirtilen öğeyi listeden siler (değere göre sil)
Revaksi() Listenin öğelerinin sırasını tersine çeviren yerinde tersine çevirme yöntemi

ÖZET

  • Bir liste tam olarak göründüğü gibidir; farklı içerikleri içeren bir kapsayıcıdır. Python tamsayılar, kelimeler, değerler vb. olabilecek nesneler.
  • Python Listeler homojen olabilir, yani aynı türden nesneleri içerebilir; veya heterojen olabilir, yani farklı türden nesneleri içerebilir.
  • Listelerdeki değerlere erişmek için listelerin içindeki nesnelerin indeksi kullanılabilir.
  • Liste dilimleme, bir listenin alt kümesini bölme yöntemidir ve liste nesnelerinin indeksleri de bunun için kullanılır.
  • Liste öğelerini silmek için üç yöntem şunlardır: 1)list.remove(), 2)list.pop() ve 3)del operatörü
  • Öğeleri eklemek için Append yöntemi kullanılır. Bu, öğeyi listenin sonuna ekler.
  • Döngü yöntemi Python program aynı anda bir veri listesinin birden fazla öğesi üzerinde gerçekleştirilebilir.
  • Liste anlayışları Python Halihazırda oluşturulmuş dizileri kullanarak yeni diziler (listeler, sözlükler vb.) oluşturmak için kullanılan işlevler.