enumerate در واقع یک کلاس هست و کاربردش زمانیست که بخواهید روی یک لیست(یا هر مخزن دیگر) پیمایش کنید و علاوه بر اعضای لیست، شماره‌ی آنها در لیست را نیز داشته باشید.
enumerate(myList) = (0, myList[0]), (1, myList[1]), (2, myList[2]), ...
سینتکس کلی بصورت زیر هست:
enumerate(myContainer, [start])
و در حلقه‌ی for میتوانید به این صورت ازش استفاده بکنید :
for enum, value in enumerate(myContainer, [start]):
    loop_statments
start شماره‌ی شروع را مشخص میکند و بصورت پیشفرض برابر با صفر قرار داده میشود. این تکه کد عناصر یک لیست را دو برابر میکند
(روش بهتری هم برای دو برابر کردن عناصر یک لیست وجود دارد، اما  این یک مثال است):
myList = [1, 2, 3, 4, 5]
for index, value in enumerate(myList):
    myList[index] = value * 2
این هم یک کد دیگر به همراه خروجی:
myList = [2, 3, 4, 5]
for i, v in enumerate(myList, -1):
    print(i, v)
خروجی:
-1 2
0 3
1 4
2 5