내장함수 - enumerate(sequence, start=0)

2015. 7. 20. 09:16IT관련

반응형

https://docs.python.org/2/library/functions.html#enumerate


enumerate(sequence, start=0)

enumerate object를 생성하여 리턴한다.

Param sequence는 반드시 sequence나 iterator 혹은 iterator method를 지원하는 object 이어야만 한다.



>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']

>>> list(enumerate(seasons))

[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]

>>> list(enumerate(seasons, start=1))

[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

>>> class Counter:

...     def __init__(self, low, high):

...             self.current = low

...             self.high = high

...     def __iter__(self):

...             return self

...     def next(self):

...             if self.current > self.high:

...                     raise StopIteration

...             else:

...                     self.current += 1

...                     return self.current - 1

... 

>>> cnt = Counter(1, 10)

>>> list(enumerate(cnt, start=2))

[(2, 1), (3, 2), (4, 3), (5, 4), (6, 5), (7, 6), (8, 7), (9, 8), (10, 9), (11, 10)]



반응형

'IT관련' 카테고리의 다른 글

내장함수 - execfile(filename[, globals[, locals]])  (0) 2015.07.20
내장함수 - eval(expression[, globals[, locals]])  (0) 2015.07.20
내장함수 - divmod(a, b)  (0) 2015.07.20
내장함수 - dir([object])  (0) 2015.07.20
내장함수 - dict  (0) 2015.07.20