Python Enumerate: Örneklerle Açıklama

Listeler ve diğer yinelenebilir nesnelerle çalışmak, Python programlamasında yaygın bir görevdir . Bazen, geçerli öğenin indeksini veya sayısını da takip ederken bu yinelemeler arasında döngü yapmanız gerekebilir. Python'un yerleşik enumerate() işlevi burada imdada yetişir.

Python'daki enumerate() işlevi, bir liste veya herhangi bir yinelenebilir nesne üzerinde döngü yaparken, hem bir öğenin dizinine hem de öğenin kendisine erişmeniz için uygun bir yol sağlar.

Python Enumerate: Örneklerle Açıklama

Bu işlev , kodunuzu daha Pythonic , okunabilir ve verimli hale getirir . Öğeler arasında geçiş yapmanıza ve hem dizinlerini hem de değerlerini almanıza olanak tanır. Döngü içinde bir sayacı manuel olarak başlatmak ve artırmak yerine, işi sizin için yapması için enumerate() işlevine güvenebilirsiniz.

Bu makalede, Python'un yerleşik işlevi olan enumerate() işlevi, Python kodunuzdaki önemi ve kullanım durumları hakkında bilgi edineceksiniz .

Hadi başlayalım!

İçindekiler

Python Numaralandırma İşlevi nedir?

Bir liste veri yapısıyla çalıştığınızı ve her öğeyle bir şeyler yapmak istediğinizi, ancak öğenin listedeki konumunu da bilmeniz gerektiğini düşünün.

Python enumerate() olmadan, her döngü yinelemesinde artırdığınız bir sayaç değişkeni kullanmaya karar verebilirsiniz. Ancak bu yaklaşım hatalara açık olabilir ve çok “Pythonic” değildir.

Numaralandırma, geçerli öğenin dizinini takip ederken yinelenebilir nesneler üzerinde yineleme yapmanızı sağlayan, Python'da yerleşik bir işlevdir.

Artık Python'daki enumerate() işlevinin ne olduğunu anladığınıza göre, bir sonraki bölümde Python enumerate() işlevinin sözdizimine geçelim!

Python Numaralandırma İşlevinin Söz Dizimi Nedir?

Bir işlevin sözdizimi, hangi bağımsız değişkenleri aldığı ve ne döndürdüğü de dahil olmak üzere, o işlevi kodunuzda nasıl kullanmanız gerektiğini tanımlar.

Python Enumerate: Örneklerle Açıklama

enumerate () işlevi aşağıdaki sözdizimini alır:

enumerate(, start=0)
  • : Bu gerekli bir parametredir ve liste veya demet gibi yinelenebilir herhangi bir Python olabilir.

  • start : Bu ikinci parametre, sayacın başlangıç ​​değerini belirten isteğe bağlı bir parametredir. Varsayılan olarak, 0 olarak ayarlanmıştır.

enumerate () işlevinin dönüş değeri, verilen yinelemedeki her öğe için (dizin, öğe) çiftlerine sahip bir yineleyici olan bir numaralandırma nesnesidir .

Hem dizine hem de öğeye aynı anda erişmek için bu yineleyiciyi bir for döngüsünde kullanabilirsiniz .

Aşağıdaki örnek, enumerate() işlevini bir listeyle nasıl kullanabileceğinizi gösterir :

fruits = ['apple', 'banana', 'cherry']

for index, item in enumerate(fruits):
    print(index, item)

Bu örnekte, enumerate() , meyve listesi gibi numaralandırılmış nesneler arasında dolaşır ve 0'dan başlayarak her öğeye bir dizin atar.

For döngüsü daha sonra dizini ve öğeyi numaralandırılmış nesneden açar. Bu, hem dizini hem de öğenin değerini temel alan işlemler gerçekleştirmenizi sağlar.

Dizini ve öğeyi ekrana yazdırmak için print işlevini kullanıyoruz. Kodun çıktısı aşağıdaki görselde verilmiştir:

Python Enumerate: Örneklerle Açıklama

Çıktıda, başlangıç ​​indeksinin 0 olduğunu görebilirsiniz. Bu, Python yorumlayıcısı tarafından otomatik olarak atanan indeksin varsayılan değeridir.

Ancak, aşağıdaki kodda gösterildiği gibi isteğe bağlı start parametresini sağlayarak sayaç için farklı bir başlangıç ​​değeri de belirleyebilirsiniz :

for index, item in enumerate(fruits, start=1):
    print(index, item)

Çıktı yukarıdakine benzer olacaktır. Tek fark, endeksin şimdi 1'den başlaması olacaktır.

Python Enumerate: Örneklerle Açıklama

Artık Python'daki enumerate() işlevinin sözdizimini biliyorsunuz. Ancak, herhangi bir araçta olduğu gibi, onu ne zaman ve nerede kullanacağınızı bilmek önemlidir.

Bu nedenle, bir sonraki bölümde enumerate() işlevi için bazı yaygın kullanım durumlarını keşfedeceğiz!

Python Numaralandırma İşlevinin 5 Kullanım Örneği

Python'daki numaralandırma işlevi, yinelenebilir bir nesnenin hem indeksinin hem de değerinin programcı için önemli olduğu senaryolarda yaygın olarak kullanılır.

Python'da numaralandırma işlevleri için yaygın kullanım örneklerinden bazılarını aşağıda listeledik.

1. Enumerate Python Listeleriyle Nasıl Kullanılır?

Python'da liste , birden çok öğeyi tek bir değişkende saklamanıza izin veren yerleşik bir veri yapısıdır. Listeyi, farklı öğeleri koyabileceğiniz bir kap olarak düşünün ve sıralarını korurlar.

enumerate() işlevi, listelerde aşağıdakiler gibi çeşitli şekillerde kullanılabilir:

A. Liste Öğelerine ve Dizinlerine Python Enumerate ile Erişim

Enumerate() için en yaygın kullanım durumlarından biri, bir listenin hem öğelerine hem de dizinlerine erişmeniz gerektiği zamandır. Numaralandırma, bunu temiz ve verimli bir şekilde yapmanızı sağlar.

Aşağıda, bir listenin öğelerine ve dizinlerine erişmeye bir örnek verilmiştir:

fruits = ['apple', 'banana', 'mango', 'grape', 'orange']
for index, fruit in enumerate(fruits):
    print(f"At index {index}, the fruit is {fruit}.")

Bu kodun çıktısı aşağıdaki görselde verilmiştir:

Python Enumerate: Örneklerle Açıklama

B. Python Enumerate ile Liste Öğelerini Değiştirme

Bir listenin öğelerini dizinlerine göre değiştirmeniz gerektiğinde , enumerate() mükemmel bir araçtır. Dizine döngü içinde erişebilir ve listeyi değiştirmek için kullanabilirsiniz.

Aşağıda, liste öğelerini numaralandırma işleviyle değiştirmenin bir örneği verilmiştir:

numbers = [1, 2, 3, 4, 5]

for i, num in enumerate(numbers):
    numbers[i] = num * 2

Bu Python kodu, 1'den 5'e kadar bir sayı listesi oluşturur. Ardından, liste üzerinde yineleme yapmak için bir for döngüsü ve enumerate() işlevini kullanır.

Her yineleme için, mevcut sayıyı (num) 2 ile çarpar ve onu listedeki aynı konuma (sayılar[i]) yeniden atar.

Sonuç, orijinal listedeki her sayının aşağıdaki resimde gösterildiği gibi ikiye katlanmasıdır:

Python Enumerate: Örneklerle Açıklama

C. İki Listedeki Elemanları Python Enumerate ile Karşılaştırma

İki farklı listedeki öğeleri karşılaştırıyorsanız, enumerate() aynı anda her iki listedeki öğelere erişmeniz için gereken dizini sağlayabilir.

Aşağıda, iki listedeki öğeleri karşılaştırmak için numaralandırma işlevinin kullanımına bir örnek verilmiştir:

list1 = [1, 2, 3, 4, 5]
list2 = [1, 2, 3, 0, 5]
for i, value in enumerate(list1):
    if value != list2[i]:
        print(f"Difference at index {i}: {value} (list1) vs {list2[i]} (list2)")

Bu kodda öncelikle list1 ve list2 olmak üzere iki liste tanımlıyoruz. Ardından, her öğenin indeksini (i) ve değerini sağlayan enumerate() ile bir for döngüsü kullanarak list1'i yineleriz.

Liste1'deki geçerli öğe, liste2'deki karşılık gelen öğeyle eşleşmiyorsa, farkın indeksini ve her iki listeden farklı değerleri yazdırır.

Bu kodun sonucu aşağıda gösterilmiştir:

Python Enumerate: Örneklerle Açıklama

2. Enumerate Python Tuples ile Nasıl Kullanılır?

Python'da bir demet, bir listeye benzer sıralı bir öğeler koleksiyonudur. Tek fark, bir demetin değişmez olmasıdır, yani oluşturulduktan sonra içeriğini değiştiremezsiniz.

Aşağıda, Python tanımlama grupları ile numaralandırmayı kullanabileceğiniz durumlardan bazıları verilmiştir.

A. Tuple'da Bir Eleman Bulmak İçin Python Enumerate()'i Kullanma

Python'da demetlerle uğraşırken, genellikle bir demette bir öğe olup olmadığını bulmanız gerekebilir.

Aşağıdaki örnek kod, bir demetteki öğeleri bulmak için numaralandırmanın kullanıldığını gösterir:

fruits = ('apple', 'banana', 'mango', 'grape', 'orange')
for i, fruit in enumerate(fruits):
    if fruit == 'mango':
        print(f"'mango' found at position {i}")

Bu kod, "mango", 2. konumda bulundu" yazacaktır çünkü 'mango', dizide 2. dizindedir.

Python Enumerate: Örneklerle Açıklama

B. Bir Tuple'dan Sözlük Oluşturmak için Python Enumerate()'i Kullanma

Bir demetiniz varsa ve onu bir sözlüğe dönüştürmeniz gerekiyorsa, Python'un enumerate() işlevi başvuracağınız araç olabilir.

Örnek kod, numaralandırmayı kullanarak bir demetten nasıl sözlük oluşturabileceğinizi gösterir:

fruits = ('apple', 'banana', 'mango', 'grape', 'orange')

fruit_dict = {i: fruit for i, fruit in enumerate(fruits)}
print(fruit_dict)

Bu kod, anahtarların dizinler olduğu ve değerlerin demetten öğeler olduğu bir sözlük yazdıracaktır.

Python Enumerate: Örneklerle Açıklama

3. Enumerate Python Sözlükleriyle Nasıl Kullanılır?

Python'da bir sözlük, her anahtarın benzersiz olması gereken değişken, sıralanmamış bir anahtar-değer çiftleri koleksiyonudur . Bunu gerçek hayattaki bir sözlük olarak düşünün: bir kelimeye (anahtar) bakarsınız ve tanımını (değeri) alırsınız.

Enumerate'i Python sözlükleriyle kullanabileceğiniz durumlardan bazıları şunlardır:

A. Bir Sözlüğün Anahtarları ve Değerleri Arasında Döngü Yapmak

Bir sözlüğün anahtarları ve değerleri arasında geçiş yapmak için enumerate() işlevini kullanabilirsiniz.

enumerate() işlevi, yinelenebilir bir nesneye (sözlükler gibi) bir sayaç ekleyerek geçerli dizin değerine erişmenizi sağlar.

Python sözlüğü ile numaralandırma işlevine bir örnek aşağıda verilmiştir:

example_dict = {1: 'a', 2: 'b', 3: 'c', 4: 'd'}
for i, k in enumerate(example_dict):
    print(i, k)

Bu Python kodunda, önce example_dict adında bir sözlük oluşturuyoruz . Ardından, sözlük üzerinde yineleme yapmak için enumerate() işlevini kullanırız.

Her yineleme için, sözlükten döngü sayısını (i ile verilen ve 0'dan başlayan) ve geçerli anahtarı (k olan) yazdırıyoruz.

Python Enumerate: Örneklerle Açıklama

B. Python Enumerate'i Items İşleviyle Birleştirme

Bir sözlüğün hem anahtarlarına hem de değerlerine , enumerate() ile birlikte items() işlevi aracılığıyla erişebilirsiniz . items () işlevi, yinelenebilir bir anahtar-değer çiftleri koleksiyonunu demetler olarak döndürür.

Aşağıdaki örnek , items() işlevini enumerate() ile nasıl kullanabileceğinizi gösterir :

example_dict = {1: 'a', 2: 'b', 3: 'c', 4: 'd'}
for i, (k, v) in enumerate(example_dict.items()):
    print(i, k, v)

Bu kodda, example_dict adlı bir sözlük oluşturuyoruz , ardından sözlüğün anahtar/değer çiftlerini yinelemek için enumerate() işlevini kullanıyoruz. Her yineleme sırasında, 'i' döngü indeksini, geçerli 'k' anahtarını ve buna karşılık gelen 'v' değerini yazdırırız.

Python Enumerate: Örneklerle Açıklama

Artık bazı yaygın senaryolarda Python'un enumerate() işlevinin nasıl kullanılacağına dair sağlam bir anlayışa sahipsiniz. Ancak enumerate()'in sunabileceği daha çok şey var.

Bir sonraki bölümde enumerate() ile ilgili bazı gelişmiş kullanım örneklerini inceleyelim!

Python Enumerate'in 3 Gelişmiş Kullanım Örneği

Bu bölümde, temel bilgilerin ötesine geçeceğiz ve Python'daki numaralandırma işlevinin bazı gelişmiş kullanım durumlarını keşfedeceğiz.

Aşağıdaki kullanım durumlarını ele alacağız:

  1. Enumerate'i Python Sınıflarıyla Kullanma

  2. Enumerate Sınıflarını Enum Sınıflarıyla Kullanma

  3. Siparişi Tersine Çevirmek için Numaralandırmayı Kullanma

Hadi başlayalım!

1. Enumerate'i Python Sınıflarıyla Kullanma

Python programlama yolculuğunuzda, özel sınıflarla numaralandırmayı kullanmak istediğiniz durumlarla karşılaşabilirsiniz.

Bunu başarmak için sınıfınız, yinelenebilir olmasına izin veren iter() yöntemini uygulamalıdır.

Renk adlarını ve bunlarla ilişkili onaltılık değerleri depolayan bir Color sınıfı düşünün :

class Color:
    def __init__(self, colors: dict):
        self.colors = colors

    def __iter__(self):
        return iter(self.colors.items())

colors = Color({"red": "#FF0000", "green": "#00FF00", "blue": "#0000FF"})

for index, (name, hex_value) in enumerate(colors):
    print(f"{index}: {name} => {hex_value}")

Bu kodda, renk adları sözlüğünü ve bunlara karşılık gelen onaltılık değerleri alan bir Color sınıfı oluşturuyoruz.

Döngüde enumerate() işlevini kullandığınızda, her bir anahtar/değer çifti ile birlikte dizini sağlar. Bu, dizini, renk adını ve onaltılık değerini biçimlendirilmiş bir dizede yazdırmanıza olanak tanır.

Python Enumerate: Örneklerle Açıklama

2. Python Enumerate'i Enum Sınıflarıyla Kullanma

Python , otomatik atanan tamsayı değerleri ile numaralandırma türleri oluşturmanıza izin veren yerleşik bir Enum sınıfıyla birlikte gelir.

Örneğin, aşağıdaki koda bir göz atın:

from enum import Enum, auto

class Direction(Enum):
    NORTH = auto()
    EAST = auto()
    SOUTH = auto()
    WEST = auto()

for index, direction in enumerate(Direction):
    print(f"{index}: {direction.name} => {direction.value}")

Bu komut dosyasında, Python'un enum modülünü kullanarak dört üyeli (KUZEY, DOĞU, GÜNEY ve BATI) bir numaralandırma Yönü tanımlıyoruz. auto() işlevi, her üyeye otomatik bir değer atar.

Döngüde enumerate() kullandığınızda, her numaralandırma üyesiyle birlikte bir dizin sağlar. Bu, dizini, üyenin adını ve otomatik olarak atanan değerini biçimlendirilmiş bir dizede yazdırmanıza olanak tanır.

Bu kodun çıktısı aşağıdaki görselde verilmiştir:

Python Enumerate: Örneklerle Açıklama

3. Siparişi Tersine Çevirmek için Python Enumerate'i Kullanma

Bazı durumlarda, öğeleri ters sırayla numaralandırmak isteyebilirsiniz. Bunu, reversed() yerleşik işlevini enumerate() ile birlikte kullanarak elde edebilirsiniz .

Aşağıdaki örnek, öğelerin ters sırayla numaralandırılmasını göstermektedir:

my_list = ["apple", "banana", "cherry"]

for index, item in enumerate(reversed(my_list)):
    print(f"{index}: {item}")

Bu kodda, enumerate() kullanarak my_list'in tersine çevrilmiş bir sürümünü yineliyoruz. Bu, size her yinelemede tersine çevrilmiş listedeki dizini ve öğeyi sağlar. Dizini ve öğeyi biçimlendirilmiş bir dizede yazdırmanıza olanak tanır.

Python Enumerate: Örneklerle Açıklama

reversed () işlevi orijinal sırayı değiştirmez; öğeleri ters sırada sunan yeni bir yineleyici oluşturur.

Python'daki işlevler hakkında daha fazla bilgi edinmek için aşağıdaki videoyu izleyin:

Son düşünceler

Python yolculuğunuza devam ederken, enumerate() işlevinde uzmanlaşmak bir zorunluluktur. Kod okunabilirliğini ve verimliliğini artıran bir araçtır.

Enumerate() kullanarak, döngülerinizdeki hem dizine hem de değere sorunsuz bir şekilde erişebilir, karşı değişkenlere veya dizin oluşturmaya olan ihtiyacı azaltırsınız. Kodunuzu basitleştirir ve daha Pythonic yapar.

İster listeler, demetler, dizeler veya sözlükler arasında yineleme yapıyor olun, enumerate() değerli bir araç olduğunu kanıtlayacaktır. enumerate() ile anlayıp pratik yaparak, Python programlama becerilerinizi geliştirmede önemli bir adım atacaksınız!

Leave a Comment

Excel Hücrelerini Metne Sığdırma: 4 Kolay Çözüm

Excel Hücrelerini Metne Sığdırma: 4 Kolay Çözüm

Excel hücrelerini metne sığdırmak için güncel bilgileri ve 4 kolay çözümü keşfedin.

Bir Excel Dosyasının Boyutu Nasıl Küçültülür – 6 Etkili Yöntem

Bir Excel Dosyasının Boyutu Nasıl Küçültülür – 6 Etkili Yöntem

Bir Excel Dosyasının Boyutunu Küçültmek için 6 Etkili Yöntem. Hızlı ve kolay yöntemler ile verilerinizi kaybetmeden yer açın.

Pythonda Self Nedir: Gerçek Dünyadan Örnekler

Pythonda Self Nedir: Gerçek Dünyadan Örnekler

Python'da Self Nedir: Gerçek Dünyadan Örnekler

Rde Bir RDS Dosyası Nasıl Kaydedilir ve Yüklenir

Rde Bir RDS Dosyası Nasıl Kaydedilir ve Yüklenir

R'de bir .rds dosyasındaki nesneleri nasıl kaydedeceğinizi ve yükleyeceğinizi öğreneceksiniz. Bu blog aynı zamanda R'den LuckyTemplates'a nesnelerin nasıl içe aktarılacağını da ele alacaktır.

İlk N İş Günü Tekrar Ziyaret Edildi – Bir DAX Kodlama Dili Çözümü

İlk N İş Günü Tekrar Ziyaret Edildi – Bir DAX Kodlama Dili Çözümü

Bu DAX kodlama dili eğitiminde, GENERATE işlevinin nasıl kullanılacağını ve bir ölçü başlığının dinamik olarak nasıl değiştirileceğini öğrenin.

LuckyTemplatesda Çok İş Parçacıklı Dinamik Görsel Tekniği Kullanarak Öngörüleri Sergileyin

LuckyTemplatesda Çok İş Parçacıklı Dinamik Görsel Tekniği Kullanarak Öngörüleri Sergileyin

Bu eğitici, raporlarınızdaki dinamik veri görselleştirmelerinden içgörüler oluşturmak için Çok Kanallı Dinamik Görseller tekniğinin nasıl kullanılacağını kapsayacaktır.

LuckyTemplatesda İçeriği Filtrelemeye Giriş

LuckyTemplatesda İçeriği Filtrelemeye Giriş

Bu yazıda, filtre bağlamından geçeceğim. Filtre bağlamı, herhangi bir LuckyTemplates kullanıcısının başlangıçta öğrenmesi gereken en önemli konulardan biridir.

LuckyTemplates Çevrimiçi Hizmetindeki Uygulamaları Kullanmak İçin En İyi İpuçları

LuckyTemplates Çevrimiçi Hizmetindeki Uygulamaları Kullanmak İçin En İyi İpuçları

LuckyTemplates Apps çevrimiçi hizmetinin çeşitli kaynaklardan oluşturulan farklı raporların ve içgörülerin yönetilmesine nasıl yardımcı olabileceğini göstermek istiyorum.

Fazla Mesai Kâr Marjı Değişikliklerini Analiz Edin - LuckyTemplates ve DAX ile Analitik

Fazla Mesai Kâr Marjı Değişikliklerini Analiz Edin - LuckyTemplates ve DAX ile Analitik

LuckyTemplates'da ölçü dallandırma ve DAX formüllerini birleştirme gibi teknikleri kullanarak kâr marjı değişikliklerinizi nasıl hesaplayacağınızı öğrenin.

DAX Studioda Veri Önbellekleri İçin Materyalleştirme Fikirleri

DAX Studioda Veri Önbellekleri İçin Materyalleştirme Fikirleri

Bu öğreticide, veri önbelleklerini gerçekleştirme fikirleri ve bunların DAX'ın sonuç sağlama performansını nasıl etkilediği tartışılacaktır.