Python enumerate() Fonksiyonu: Döngü, Demet ve Dize

⚡ Akıllı Özet

Python `enumerate()` fonksiyonu, herhangi bir yinelenebilir nesneye otomatik bir sayaç ekler ve döngü sırasında indeks-değer çiftleri döndürür. Burada sözdizimini, isteğe bağlı başlangıç ​​indeksini ve listeler, demetler, dizeler ve sözlükler üzerinde nasıl çalıştığını öğreneceksiniz.

  • 🔢 Ne yapar: Yinelenebilir bir nesnenin her öğesine bir sayaç ekler ve dizin-değer çiftleri döndürür.
  • ⚙️ Sözdizimi: enumerate(iterable, startIndex) bir yinelenebilir nesne ve isteğe bağlı bir başlangıç ​​numarası alır.
  • 🔟 Özel başlangıç: startIndex, sayımın başlangıç ​​noktasını belirler; 0'dan başlamak için bu parametreyi atlayın.
  • 🔁 tuvaletping: İndeks ve değeri birlikte okumak için bir for döngüsüyle birlikte kullanın.
  • ???? Herhangi bir yinelenebilir nesne: Listeler, demetler, dizeler ve sözlükler üzerinde çalışır.
  • 🤖 Yapay zekâ yardımı: Copilot ve AI araçları, enumerate() döngülerini otomatik olarak tamamlar ve manuel sayaçları yeniden düzenler.

Enumerate() İşlevi Python

Nedir? Python Numaralandırılsın mı?

Python Numaralandır() ile kullanılabilen yerleşik bir işlevdir. Python kütüphane. Verilen girdiyi bir koleksiyon veya tuple olarak alır ve onu bir numaralandırma nesnesi olarak döndürür. Python Enumerate() komutu, yinelenebilir nesnenin her öğesine bir sayaç ekler ve bir çıktı dizesi olarak bir numaralandırma nesnesi döndürür.

sözdizimi Python numaralandırmak()

enumerate(iterable, startIndex)

Parametreler

Üç parametre şunlardır:

  • iterable: döngüye alınabilen bir nesne.
  • Dizini başlat: (isteğe bağlı) Sayım, döngüdeki ilk öğe için startIndex'te verilen değerle başlayacak ve sonraki öğe için döngünün sonuna ulaşana kadar artırılacaktır.

Ancak startIndex belirtilmezse sayım 0'dan başlayacaktır.

Geri dönüş değeri

Girdi olarak verilen yineleyici nesneye her bir öğenin sayı değeriyle birlikte yinelenebilir bir nesne döndürecektir.

Numaralandır() Python Örnek E-posta

Numaralandırma yöntemi, Numaralandırma listesinde bulunan öğelerin her biri için otomatik bir sayaç/dizin ile birlikte gelir. Python. Firstindex değeri 0'dan başlayacaktır. Enumerate'deki isteğe bağlı startIndex parametresini kullanarak da startindex'i belirleyebilirsiniz.
Örnek E-posta
Aşağıdaki kodda mylist, Enumerate fonksiyonuna verilen listedir. Python. liste() işlevi Numaralandırmayı görüntülemek için kullanılır Python çıktı.

Not: startIndex kullanılmadığından ilk öğenin dizini 0'dan başlayacaktır.

Numaralandırmanın çıktısı aşağıdaki şekilde olacaktır:

(0, item_1), (1, item_2), (2, item_3), … (n, item_n)

Dosya: python_enumerate.py

mylist = ['A', 'B' ,'C', 'D']
e_list = enumerate(mylist)
print(list(e_list))

Çıktı:

[(0, 'A'), (1, 'B'), (2, 'C'), (3, 'D')]

startIndex içeren bir listede Enumerate() işlevini kullanmak

Aşağıdaki örnekte 2 olarak verilen başlangıç ​​indeksi. İlk öğenin indeksi verilen başlangıç ​​indeksinden başlayacaktır.

Örnek:

Aşağıdaki örnekte mylist numaralandırmak için verilen listedir. Liste() işlevi, numaralandırma çıktısını görüntülemek için kullanılır.

mylist = ['A', 'B' ,'C', 'D']
e_list = enumerate(mylist,2)
print(list(e_list))

Çıktı:

[(2, 'A'), (3, 'B'), (4, 'C'), (5, 'D')]

tuvaletping Bir Enumerate nesnesi üzerinde

Örnek, startIndex'li ve startIndex'siz bir nesne üzerinde numaralandırmayı gösterir.

  • İlk for döngüsünde startIndex yoktur, dolayısıyla indeks 0'dan başlar.
  • İkinci for döngüsü startIndex'e 10 olarak sahiptir, dolayısıyla indeks 10'dan başlar.

Örnek:

mylist = ['A', 'B' ,'C', 'D']

for i in enumerate(mylist):
  print(i)
  print("\n")

print("Using startIndex as 10")    

for i in enumerate(mylist, 10):
  print(i)
  print("\n")

Çıktı:

(0, 'A')
(1, 'B')
(2, 'C')
(3, 'D')

Using startIndex as 10
(10, 'A')
(11, 'B')
(12, 'C')
(13, 'D')

Bir Tuple'ı Numaralandırma

Aşağıdaki örnekte, bir numaralandırmanın içinde bir tanımlama grubu kullanabilirsiniz. Ayrıca bir startIndex kullanabilirsiniz ve her öğenin anahtarı startIndexgiven'den başlayacaktır.

Varsayılan olarak startIndex 0'dır. Bu nedenle anahtarı A öğeleri için 0, B için 1 vb. olarak görürsünüz.

Örnek:

my_tuple = ("A", "B", "C", "D", "E")
for i in enumerate(my_tuple):
  print(i)

Çıktı:

(0, 'A')
(1, 'B')
(2, 'C')
(3, 'D')
(4, 'E')

Bir Dizeyi Numaralandırma

In Pythondize bir dizidir ve dolayısıyla onun üzerinde döngü yapabilirsiniz. Enumerate() işlevine bir dize iletirseniz, çıktı size dizedeki her karakterin indeksini ve değerini gösterecektir.

Örnek:

my_str = "Guru99 "
for i in enumerate(my_str):
  print(i)

Çıktı:

(0, 'G')
(1, 'u')
(2, 'r')
(3, 'u')
(4, '9')
(5, '9')

Bir sözlüğü numaralandırma

In Python, bir sözlük süslü parantez içinde listelenir, bu süslü parantezlerin içinde değerler tanımlanır.

Her öğe bir anahtar/değer çiftidir ve virgülle ayrılır. Enumerate() içinde bir sözlük kullanabilir ve çıktıyı görebilirsiniz.

my_dict = {"a": "PHP", "b":"JAVA", "c":"PYTHON", "d":"NODEJS"}
for i in enumerate(my_dict):
  print(i)

Çıktı:

(0, 'a')
(1, 'b')
(2, 'c')
(3, 'd')

Enumerate'i kullanmanın avantajları

Burada Enumerate kullanmanın artıları/yararları verilmiştir. Python:

  • Numaralandırma, bir liste, tanımlama grubu, sözlük, dize arasında geçiş yapmanıza olanak tanır ve değerleri dizinle birlikte verir.
  • For-döngüsünü kullanarak indeks değeri elde etmek için list.index(n)'den yararlanabilirsiniz. Ancak list.index(n) for döngüsünü iki kez geçeceği için çok pahalıdır. Enumerate, dizini ve öğeleri tek seferde verdiği için böyle bir durumda çok faydalıdır.

SSS

`enumerate()` fonksiyonu, liste, demet, dize veya sözlük gibi yinelenebilir bir yapıya sayaç ekleyen ve indeks-değer çiftleri döndüren yerleşik bir fonksiyondur.

Sözdizimi enumerate(iterable, startIndex) şeklindedir. iterable, döngüye alınabilen herhangi bir nesnedir; startIndex ise isteğe bağlı bir başlangıç ​​sayısıdır. Bu sayı belirtilmezse, sayım 0'dan başlar.

İkinci bir argüman olarak enumerate(mylist, 2) gibi bir ifade kullanın. Bu durumda sayma işlemi 0 yerine bu değerden başlar, böylece ilk öğe 2. indeksi alır.

Evet. Sözlük üzerinde döngü oluşturmak, anahtarlarını tek tek indekslerle eşleştirerek işler. Değerlere de ihtiyacınız olduğunda sözlüğün öğelerini (items()) numaralandırın.

`enumerate()`, manuel indeksleme veya `list.index(n)`'den daha temiz ve hızlıdır; `list.index(n)` iki kez tarama yapar ve indeksi ve öğeyi birlikte döndürür.

GitHub Copilot gibi yapay zeka asistanları, enumerate() döngülerini otomatik olarak tamamlar, bir başlangıç ​​dizini önerir ve manuel sayaçları yeniden düzenleyerek, alışılmışın dışında yöntemleri hızlandırır. Python ve bir eksik olan hataları yakalamak.

Evet. Yapay zeka destekli linter'lar bu yeniden düzenlemeyi otomatikleştirerek range(len(x)) kalıplarını tespit eder ve daha temiz, daha verimli bir şekilde enumerate(x) olarak yeniden yazar. PythonÖzdeş davranışa sahip ic döngüleri.

`enumerate()` fonksiyonu, (indeks, değer) çiftlerinden oluşan bir yineleyici olan bir `enumerate` nesnesi döndürür. Doğrudan döngüye alabilir veya tüm çiftleri görmek için `list()` içine sarabilirsiniz.

Bu yazıyı şu şekilde özetleyin: