- Katılım
- 21 Ocak 2024
- Mesajlar
- 164
- Tepkime puanı
- 36
- Puanları
- 28
Listeler
Python'da dört adet koleksiyon veri tipi vardır:
List: Sıralı ve değiştirilebilir (modifiye edilebilir) bir koleksiyondur. Yinelenen üyelere izin verir.
Tuple: Sıralı ve değiştirilemez veya değiştirilemez (değişmez) bir koleksiyondur. Çift üyelere izin verir.
Set: sıralanmamış, indekslenmemiş ve değiştirilemeyen bir koleksiyondur, ancak kümeye yeni öğeler ekleyebiliriz. Yinelenen üyelere izin verilmez.
Dictionary: sırasız, değiştirilebilir (modifiable) ve indekslenebilir bir koleksiyondur. Yinelenen üye yoktur.
Liste, sıralı ve değiştirilebilir (mutable) olan farklı veri tiplerinin bir koleksiyonudur. Bir liste boş olabilir veya farklı veri tipi öğelerine sahip olabilir.
Liste Nasıl Oluşturulur
Python'da listeleri iki şekilde oluşturabiliriz:
Liste yerleşik fonksiyonunu kullanarak
Köşeli parantez kullanarak, []
İlk değerlere sahip listeler. Bir listenin uzunluğunu bulmak için len() fonksiyonunu kullanırız.
Listeler farklı veri türlerinde öğelere sahip olabilir
Pozitif İndeksleme Kullanarak Liste Öğelerine Erişme
Bir listedeki her bir öğeye indekslerini kullanarak erişiriz. Bir liste indeksi 0'dan başlar. Aşağıdaki resim indeksin nerede başladığını açıkça göstermektedir
Negatif İndeksleme Kullanarak Liste Öğelerine Erişme
Negatif indeksleme sondan başlama anlamına gelir, -1 son öğeyi, -2 ikinci son öğeyi ifade eder.
Liste Öğelerini Paketten Çıkarma
Listeden Öğeleri Bölme
Pozitif İndeksleme: Başlangıç, bitiş ve adımı belirterek bir pozitif indeks aralığı belirtebiliriz, dönüş değeri yeni bir liste olacaktır. (başlangıç = 0, bitiş = len(lst) - 1 (son öğe), adım = 1 için varsayılan değerler)
Negatif İndeksleme: Başlangıç, bitiş ve adım belirterek bir negatif indeks aralığı belirleyebiliriz, dönüş değeri yeni bir liste olacaktır.
Listeleri Değiştirme
Liste, değiştirilebilir veya değiştirilebilir sıralı bir öğe koleksiyonudur. Meyve listesini değiştirelim.
Listedeki Öğeleri Kontrol Etme
in operatörünü kullanarak bir öğenin bir listenin üyesi olup olmadığını kontrol etme. Aşağıdaki örneğe bakınız.
Listeye Öğeler Ekleme
Mevcut bir listenin sonuna öğe eklemek için append() yöntemini kullanırız.
Öğeleri Listeye Ekleme
Bir listede belirtilen bir indekse tek bir öğe eklemek için insert() yöntemini kullanabiliriz. Diğer öğelerin sağa kaydırılacağını unutmayın. insert() metodu iki argüman alır: index ve eklenecek öğe.
Listeden Öğeleri Kaldırma
remove yöntemi, belirtilen bir öğeyi listeden kaldırır
Pop Kullanarak Öğeleri Kaldırma
pop() yöntemi belirtilen dizini (veya dizin belirtilmemişse son öğeyi) kaldırır:
Del Kullanarak Öğeleri Kaldırma
del anahtar sözcüğü belirtilen dizini kaldırır ve dizin aralığındaki öğeleri silmek için de kullanılabilir. Ayrıca listeyi tamamen silebilir
Liste Öğelerini Temizleme
clear() yöntemi listeyi boşaltır:
Liste Kopyalama
Bir listeyi aşağıdaki şekilde yeni bir değişkene yeniden atayarak kopyalamak mümkündür: liste2 = liste1. Şimdi, liste2 liste1'in bir referansıdır, liste2'de yaptığımız herhangi bir değişiklik orijinal liste1'i de değiştirecektir. Ancak, orijinali değiştirmek istemediğimiz, bunun yerine farklı bir kopyaya sahip olmak istediğimiz birçok durum vardır. Yukarıdaki sorundan kaçınmanın bir yolu copy() kullanmaktır.
Listelere Katılma
Python'da iki veya daha fazla listeyi birleştirmenin veya bir araya getirmenin birkaç yolu vardır.
Artı Operatörü (+)
extend() yöntemini kullanarak birleştirme extend() yöntemi bir listeye liste eklemeyi sağlar. Aşağıdaki örneğe bakın.
Listedeki Öğeleri Sayma
count() yöntemi, bir öğenin listede kaç kez göründüğünü döndürür:
Bir Öğenin Dizinini Bulma
index() yöntemi, listedeki bir öğenin indeksini döndürür:
Listeyi Tersine Çevirme
reverse() yöntemi bir listenin sırasını tersine çevirir.
Liste Öğelerini Sıralama
Listeleri sıralamak için sort() metodunu veya sorted() yerleşik fonksiyonlarını kullanabiliriz. sort() yöntemi liste öğelerini artan sırada yeniden sıralar ve orijinal listeyi değiştirir. sort() yönteminin bir argümanı reverse true değerine eşitse, listeyi azalan sırada düzenler.
sort(): bu yöntem orijinal listeyi değiştirir
Örnek:
sorted(): orijinal listeyi değiştirmeden sıralı listeyi döndürür Örnek:
Python'da dört adet koleksiyon veri tipi vardır:
List: Sıralı ve değiştirilebilir (modifiye edilebilir) bir koleksiyondur. Yinelenen üyelere izin verir.
Tuple: Sıralı ve değiştirilemez veya değiştirilemez (değişmez) bir koleksiyondur. Çift üyelere izin verir.
Set: sıralanmamış, indekslenmemiş ve değiştirilemeyen bir koleksiyondur, ancak kümeye yeni öğeler ekleyebiliriz. Yinelenen üyelere izin verilmez.
Dictionary: sırasız, değiştirilebilir (modifiable) ve indekslenebilir bir koleksiyondur. Yinelenen üye yoktur.
Liste, sıralı ve değiştirilebilir (mutable) olan farklı veri tiplerinin bir koleksiyonudur. Bir liste boş olabilir veya farklı veri tipi öğelerine sahip olabilir.
Liste Nasıl Oluşturulur
Python'da listeleri iki şekilde oluşturabiliriz:
Liste yerleşik fonksiyonunu kullanarak
Python:
# syntax
lst = list()
Python:
empty_list = list() # bu boş bir liste, listede öğe yok
print(len(empty_list)) # 0
Köşeli parantez kullanarak, []
Python:
# syntax
lst = []
Python:
empty_list = [] # bu boş bir liste, listede öğe yok
print(len(empty_list)) # 0
İlk değerlere sahip listeler. Bir listenin uzunluğunu bulmak için len() fonksiyonunu kullanırız.
Python:
fruits = ['banana', 'orange', 'mango', 'lemon'] # meyve listesi
vegetables = ['Tomato', 'Potato', 'Cabbage','Onion', 'Carrot'] # sebze listesi
animal_products = ['milk', 'meat', 'butter', 'yoghurt'] # hayvanlar listesi
web_techs = ['HTML', 'CSS', 'JS', 'React','Redux', 'Node', 'MongDB'] # web teknolojileri listesi
countries = ['Finland', 'Estonia', 'Denmark', 'Sweden', 'Norway']
# Print the lists and its length
print('Fruits:', fruits)
print('Number of fruits:', len(fruits))
print('Vegetables:', vegetables)
print('Number of vegetables:', len(vegetables))
print('Animal products:',animal_products)
print('Number of animal products:', len(animal_products))
print('Web technologies:', web_techs)
print('Number of web technologies:', len(web_techs))
print('Countries:', countries)
print('Number of countries:', len(countries))
Python:
output
Fruits: ['banana', 'orange', 'mango', 'lemon']
Number of fruits: 4
Vegetables: ['Tomato', 'Potato', 'Cabbage', 'Onion', 'Carrot']
Number of vegetables: 5
Animal products: ['milk', 'meat', 'butter', 'yoghurt']
Number of animal products: 4
Web technologies: ['HTML', 'CSS', 'JS', 'React', 'Redux', 'Node', 'MongDB']
Number of web technologies: 7
Countries: ['Finland', 'Estonia', 'Denmark', 'Sweden', 'Norway']
Number of countries: 5
Listeler farklı veri türlerinde öğelere sahip olabilir
Python:
lst = ['PwnLabMe', 3, True, {'country':'Turkiye', 'city':'Ankara'}] # farklı veri türleri içeren liste
Pozitif İndeksleme Kullanarak Liste Öğelerine Erişme
Bir listedeki her bir öğeye indekslerini kullanarak erişiriz. Bir liste indeksi 0'dan başlar. Aşağıdaki resim indeksin nerede başladığını açıkça göstermektedir
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
first_fruit = fruits[0] # ilk öğeye onun indeksini kullanarak erişiyoruz
print(first_fruit) # banana
second_fruit = fruits[1]
print(second_fruit) # orange
last_fruit = fruits[3]
print(last_fruit) # lemon
# Last index
last_index = len(fruits) - 1
last_fruit = fruits[last_index]
Negatif İndeksleme Kullanarak Liste Öğelerine Erişme
Negatif indeksleme sondan başlama anlamına gelir, -1 son öğeyi, -2 ikinci son öğeyi ifade eder.
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
first_fruit = fruits[-4]
last_fruit = fruits[-1]
second_last = fruits[-2]
print(first_fruit) # banana
print(last_fruit) # lemon
print(second_last) # mango
Liste Öğelerini Paketten Çıkarma
Python:
lst = ['item1','item2','item3', 'item4', 'item5']
first_item, second_item, third_item, *rest = lst
print(first_item) # item1
print(second_item) # item2
print(third_item) # item3
print(rest) # ['item4', 'item5']
Python:
# ilk örnek
fruits = ['banana', 'orange', 'mango', 'lemon','lime','apple']
first_fruit, second_fruit, third_fruit, *rest = fruits
print(first_fruit) # banana
print(second_fruit) # orange
print(third_fruit) # mango
print(rest) # ['lemon','lime','apple']
# ikinci örnek
first, second, third,*rest, tenth = [1,2,3,4,5,6,7,8,9,10]
print(first) # 1
print(second) # 2
print(third) # 3
print(rest) # [4,5,6,7,8,9]
print(tenth) # 10
# üçüncü örnek
countries = ['Germany', 'France','Belgium','Sweden','Denmark','Finland','Norway','Iceland','Estonia']
gr, fr, bg, sw, *scandic, es = countries
print(gr)
print(fr)
print(bg)
print(sw)
print(scandic)
print(es)
Listeden Öğeleri Bölme
Pozitif İndeksleme: Başlangıç, bitiş ve adımı belirterek bir pozitif indeks aralığı belirtebiliriz, dönüş değeri yeni bir liste olacaktır. (başlangıç = 0, bitiş = len(lst) - 1 (son öğe), adım = 1 için varsayılan değerler)
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
all_fruits = fruits[0:4] # tüm meyveleri döndürür
# bu da yukarıdaki ile aynı sonucu verecektir
all_fruits = fruits[0:] # Eğer nerede duracağımızı belirlemezsek, geri kalan her şeyi alır.
orange_and_mango = fruits[1:3] # ilk endeksi içermez
orange_mango_lemon = fruits[1:]
orange_and_lemon = fruits[::2] # burada 3. bir argüman kullandık, adım. Her 2. öğeyi alacaktır - ['banana', 'mango']
Negatif İndeksleme: Başlangıç, bitiş ve adım belirterek bir negatif indeks aralığı belirleyebiliriz, dönüş değeri yeni bir liste olacaktır.
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
all_fruits = fruits[-4:] # tüm meyveleri döndürür
orange_and_mango = fruits[-3:-1] # son indeksi içermez,['orange', 'mango']
orange_mango_lemon = fruits[-3:] # bu -3'ten başlayarak sonuna kadar verecektir,['orange', 'mango', 'lemon']
reverse_fruits = fruits[::-1] # negatif bir adım listeyi ters sırada alacaktır,['lemon', 'mango', 'orange', 'banana']
Listeleri Değiştirme
Liste, değiştirilebilir veya değiştirilebilir sıralı bir öğe koleksiyonudur. Meyve listesini değiştirelim.
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
fruits[0] = 'avocado'
print(fruits) # ['avocado', 'orange', 'mango', 'lemon']
fruits[1] = 'apple'
print(fruits) # ['avocado', 'apple', 'mango', 'lemon']
last_index = len(fruits) - 1
fruits[last_index] = 'lime'
print(fruits) # ['avocado', 'apple', 'mango', 'lime']
Listedeki Öğeleri Kontrol Etme
in operatörünü kullanarak bir öğenin bir listenin üyesi olup olmadığını kontrol etme. Aşağıdaki örneğe bakınız.
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
does_exist = 'banana' in fruits
print(does_exist) # True
does_exist = 'lime' in fruits
print(does_exist) # False
Listeye Öğeler Ekleme
Mevcut bir listenin sonuna öğe eklemek için append() yöntemini kullanırız.
Python:
# syntax
lst = list()
lst.append(item)
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
fruits.append('apple')
print(fruits) # ['banana', 'orange', 'mango', 'lemon', 'apple']
fruits.append('lime') # ['banana', 'orange', 'mango', 'lemon', 'apple', 'lime']
print(fruits)
Öğeleri Listeye Ekleme
Bir listede belirtilen bir indekse tek bir öğe eklemek için insert() yöntemini kullanabiliriz. Diğer öğelerin sağa kaydırılacağını unutmayın. insert() metodu iki argüman alır: index ve eklenecek öğe.
Python:
# syntax
lst = ['item1', 'item2']
lst.insert(index, item)
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
fruits.insert(2, 'apple') # insert apple between orange and mango
print(fruits) # ['banana', 'orange', 'apple', 'mango', 'lemon']
fruits.insert(3, 'lime') # ['banana', 'orange', 'apple', 'lime', 'mango', 'lemon']
print(fruits)
Listeden Öğeleri Kaldırma
remove yöntemi, belirtilen bir öğeyi listeden kaldırır
Python:
# syntax
lst = ['item1', 'item2']
lst.remove(item)
Python:
fruits = ['banana', 'orange', 'mango', 'lemon', 'banana']
fruits.remove('banana')
print(fruits) # ['orange', 'mango', 'lemon', 'banana'] - this method removes the first occurrence of the item in the list
fruits.remove('lemon')
print(fruits) # ['orange', 'mango', 'banana']
Pop Kullanarak Öğeleri Kaldırma
pop() yöntemi belirtilen dizini (veya dizin belirtilmemişse son öğeyi) kaldırır:
Python:
# syntax
lst = ['item1', 'item2']
lst.pop() # sonraki item
lst.pop(index)
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
fruits.pop()
print(fruits) # ['banana', 'orange', 'mango']
fruits.pop(0)
print(fruits) # ['orange', 'mango']
Del Kullanarak Öğeleri Kaldırma
del anahtar sözcüğü belirtilen dizini kaldırır ve dizin aralığındaki öğeleri silmek için de kullanılabilir. Ayrıca listeyi tamamen silebilir
Python:
# syntax
lst = ['item1', 'item2']
del lst[index] # sadece tek bir öğe
del lst # listeyi tamamen silmek için
Python:
fruits = ['banana', 'orange', 'mango', 'lemon', 'kiwi', 'lime']
del fruits[0]
print(fruits) # ['orange', 'mango', 'lemon', 'kiwi', 'lime']
del fruits[1]
print(fruits) # ['orange', 'lemon', 'kiwi', 'lime']
del fruits[1:3] # bu, verilen indeksler arasındaki öğeleri siler, bu nedenle 3. indekse sahip öğeyi silmez!
print(fruits) # ['orange', 'lime']
del fruits
print(fruits) # Bu sonucu verecektir: NameError: name 'fruits' is not defined
Liste Öğelerini Temizleme
clear() yöntemi listeyi boşaltır:
Python:
# syntax
lst = ['item1', 'item2']
lst.clear()
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
fruits.clear()
print(fruits) # []
Liste Kopyalama
Bir listeyi aşağıdaki şekilde yeni bir değişkene yeniden atayarak kopyalamak mümkündür: liste2 = liste1. Şimdi, liste2 liste1'in bir referansıdır, liste2'de yaptığımız herhangi bir değişiklik orijinal liste1'i de değiştirecektir. Ancak, orijinali değiştirmek istemediğimiz, bunun yerine farklı bir kopyaya sahip olmak istediğimiz birçok durum vardır. Yukarıdaki sorundan kaçınmanın bir yolu copy() kullanmaktır.
Python:
# syntax
lst = ['item1', 'item2']
lst_copy = lst.copy()
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
fruits_copy = fruits.copy()
print(fruits_copy) # ['banana', 'orange', 'mango', 'lemon']
Listelere Katılma
Python'da iki veya daha fazla listeyi birleştirmenin veya bir araya getirmenin birkaç yolu vardır.
Artı Operatörü (+)
Python:
# syntax
list3 = list1 + list2
Python:
positive_numbers = [1, 2, 3, 4, 5]
zero = [0]
negative_numbers = [-5,-4,-3,-2,-1]
integers = negative_numbers + zero + positive_numbers
print(integers) # [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5]
fruits = ['banana', 'orange', 'mango', 'lemon']
vegetables = ['Tomato', 'Potato', 'Cabbage', 'Onion', 'Carrot']
fruits_and_vegetables = fruits + vegetables
print(fruits_and_vegetables ) # ['banana', 'orange', 'mango', 'lemon', 'Tomato', 'Potato', 'Cabbage', 'Onion', 'Carrot']
extend() yöntemini kullanarak birleştirme extend() yöntemi bir listeye liste eklemeyi sağlar. Aşağıdaki örneğe bakın.
Python:
# syntax
list1 = ['item1', 'item2']
list2 = ['item3', 'item4', 'item5']
list1.extend(list2)
Python:
num1 = [0, 1, 2, 3]
num2= [4, 5, 6]
num1.extend(num2)
print('Numbers:', num1) # Numbers: [0, 1, 2, 3, 4, 5, 6]
negative_numbers = [-5,-4,-3,-2,-1]
positive_numbers = [1, 2, 3,4,5]
zero = [0]
negative_numbers.extend(zero)
negative_numbers.extend(positive_numbers)
print('Integers:', negative_numbers) # Integers: [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5]
fruits = ['banana', 'orange', 'mango', 'lemon']
vegetables = ['Tomato', 'Potato', 'Cabbage', 'Onion', 'Carrot']
fruits.extend(vegetables)
print('Fruits and vegetables:', fruits ) # Fruits and vegetables: ['banana', 'orange', 'mango', 'lemon', 'Tomato', 'Potato', 'Cabbage', 'Onion', 'Carrot']
Listedeki Öğeleri Sayma
count() yöntemi, bir öğenin listede kaç kez göründüğünü döndürür:
Python:
# syntax
lst = ['item1', 'item2']
lst.count(item)
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
print(fruits.count('orange')) # 1
ages = [22, 19, 24, 25, 26, 24, 25, 24]
print(ages.count(24)) # 3
Bir Öğenin Dizinini Bulma
index() yöntemi, listedeki bir öğenin indeksini döndürür:
Python:
# syntax
lst = ['item1', 'item2']
lst.index(item)
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
print(fruits.index('orange')) # 1
ages = [22, 19, 24, 25, 26, 24, 25, 24]
print(ages.index(24)) # 2, ilk oluşum
Listeyi Tersine Çevirme
reverse() yöntemi bir listenin sırasını tersine çevirir.
Python:
# syntax
lst = ['item1', 'item2']
lst.reverse()
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
fruits.reverse()
print(fruits) # ['lemon', 'mango', 'orange', 'banana']
ages = [22, 19, 24, 25, 26, 24, 25, 24]
ages.reverse()
print(ages) # [24, 25, 24, 26, 25, 24, 19, 22]
Liste Öğelerini Sıralama
Listeleri sıralamak için sort() metodunu veya sorted() yerleşik fonksiyonlarını kullanabiliriz. sort() yöntemi liste öğelerini artan sırada yeniden sıralar ve orijinal listeyi değiştirir. sort() yönteminin bir argümanı reverse true değerine eşitse, listeyi azalan sırada düzenler.
sort(): bu yöntem orijinal listeyi değiştirir
Python:
# syntax
lst = ['item1', 'item2']
lst.sort() # artan
lst.sort(reverse=True) # azalan
Örnek:
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
fruits.sort()
print(fruits) # alfabetik sıraya göre sıralanmıştır, ['banana', 'lemon', 'mango', 'orange']
fruits.sort(reverse=True)
print(fruits) # ['orange', 'mango', 'lemon', 'banana']
ages = [22, 19, 24, 25, 26, 24, 25, 24]
ages.sort()
print(ages) # [19, 22, 24, 24, 24, 25, 25, 26]
ages.sort(reverse=True)
print(ages) # [26, 25, 25, 24, 24, 24, 22, 19]
sorted(): orijinal listeyi değiştirmeden sıralı listeyi döndürür Örnek:
Python:
fruits = ['banana', 'orange', 'mango', 'lemon']
print(sorted(fruits)) # ['banana', 'lemon', 'mango', 'orange']
# Ters sıra
fruits = ['banana', 'orange', 'mango', 'lemon']
fruits = sorted(fruits,reverse=True)
print(fruits) # ['orange', 'mango', 'lemon', 'banana']