Python, enumerate() функцийг ашиглах: Жагсаалтын элементүүд болон индексүүдийг авах

Бизнес эрхэлдэг

Python-ийн enumerate() функцийг ашигласнаар та индексийн дугаар (тоо, эрэмбэ) болон давтагдах боломжтой объектын элементүүдийг, тухайлбал, for давталт дахь жагсаалт эсвэл tuple-г авах боломжтой.

Энэ нийтлэл нь enumerate() функцын үндсийг тайлбарладаг.

  • For давталт дахь индексийг авах функц:enumerate()
    • Хэвийн гогцоо
    • Enumerate() функцийг ашиглан давталтын хувьд
  • enumerate() функцийн индексийг 1-ээс эхлүүлнэ үү (тэг бус утга)
  • Өсөлтийг зааж өгөх (алхам)

enumerate() функц нь for циклийн индексийг авах боломжтой.

Хэвийн гогцоо

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

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

Enumerate() функцийг ашиглан давталтын хувьд

Жагсаалт гэх мэт давтагдах боломжтой объектыг enumerate() функцийн аргумент болгон зааж өгнө үү.

Та индексийн дугаар болон элементийг дарааллаар нь авч болно.

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

enumerate() функцийн индексийг 1-ээс эхлүүлнэ үү (тэг бус утга)

Дээрх жишээнд үзүүлснээр анхдагчаар enumerate() функцын индекс 0-ээс эхэлдэг.

Хэрэв та 0-ээс өөр тоогоор эхлэхийг хүсвэл enumerate() функцийн хоёр дахь аргумент болгон дурын эхлэлийн тоог зааж өгнө үү.

Эхнээс нь эхлүүлэхийн тулд дараахь зүйлийг хий.

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

Мэдээжийн хэрэг, та бусад тооноос эхэлж болно.

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

Та дараалсан дугаарласан мөр үүсгэхийг хүсвэл хэрэг болно; 1-ээс эхлэхийн тулд ‘i+1’-г ашиглахаас илүүтэйгээр enumerate() функцийн хоёр дахь аргумент болох эхлэлийн дугаарыг зааж өгөх нь илүү ухаалаг хэрэг юм.

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

Тоонуудыг тэгээр дүүргэхэд ашигладаг форматын функцын талаар дэлгэрэнгүй мэдээллийг дараах нийтлэлээс үзнэ үү.

Өсөлтийг зааж өгөх (алхам)

Enumerate() функцэд өсөн нэмэгдэх алхмыг зааж өгөх ямар ч аргумент байхгүй, гэхдээ дараахь зүйлийг хийснээр үүнийг хийж болно.

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