Python, Gamit ang enumerate() function: Pagkuha ng mga elemento at indeks ng isang listahan

Negosyo

Gamit ang enumerate() function ng Python, maaari mong makuha ang index number (count, order) gayundin ang mga elemento ng isang iterable object tulad ng isang listahan o tuple sa isang for loop.

Ipinapaliwanag ng artikulong ito ang mga pangunahing kaalaman ng enumerate() function.

  • Function para makuha ang index sa isang for loop:enumerate()
    • Normal para sa loop
    • Para sa loop gamit ang enumerate() function
  • Simulan ang index ng enumerate() function sa 1 (isang non-zero na halaga)
  • Tukuyin ang pagtaas (hakbang)

Ang enumerate() function ay maaaring gamitin upang makuha ang index sa isang for loop.

Normal para sa loop

l = ['Alice', 'Bob', 'Charlie']

for name in l:
    print(name)
# Alice
# Bob
# Charlie

Para sa loop gamit ang enumerate() function

Tukuyin ang isang iterable object tulad ng isang listahan bilang argumento ng enumerate() function.

Makukuha mo ang index number at ang elemento sa ayos na iyon.

for i, name in enumerate(l):
    print(i, name)
# 0 Alice
# 1 Bob
# 2 Charlie

Simulan ang index ng enumerate() function sa 1 (isang non-zero na halaga)

Gaya ng ipinapakita sa halimbawa sa itaas, bilang default, ang index ng enumerate() function ay nagsisimula sa 0.

Kung gusto mong magsimula sa isang numero maliban sa 0, tukuyin ang isang arbitrary na panimulang numero bilang pangalawang argumento ng enumerate() function.

Upang magsimula sa simula, gawin ang sumusunod.

for i, name in enumerate(l, 1):
    print(i, name)
# 1 Alice
# 2 Bob
# 3 Charlie

Siyempre, maaari kang magsimula sa iba pang mga numero.

for i, name in enumerate(l, 42):
    print(i, name)
# 42 Alice
# 43 Bob
# 44 Charlie

Kapaki-pakinabang kapag gusto mong lumikha ng isang sequentially numbered string; mas matalinong tukuyin ang panimulang numero bilang pangalawang argumento ng enumerate() function kaysa gamitin ang ‘i+1’ upang magsimula sa 1.

for i, name in enumerate(l, 1):
    print('{:03}_{}'.format(i, name))
# 001_Alice
# 002_Bob
# 003_Charlie

Tingnan ang sumusunod na artikulo para sa higit pang impormasyon tungkol sa format function, na ginagamit upang punan ang mga numero ng mga zero.

Tukuyin ang pagtaas (hakbang)

Walang argumento upang tukuyin ang incremental na hakbang sa enumerate() function, ngunit maaari itong makamit sa pamamagitan ng paggawa ng sumusunod

step = 3
for i, name in enumerate(l):
    print(i * step, name)
# 0 Alice
# 3 Bob
# 6 Charlie
Copied title and URL