티스토리 뷰
listiterator object에 대해서 살펴봅니다.
우선 아래와 같은 list가 있고
>>> aa = [1,2,3,4,5,6]
>>> type (aa)
aa라는 list를 iterator화 시켜서 bb라는 listiterator에 담는 과정은 아래와 같습니다.
>>> bb = iter(aa)
>>>
>>> bb
<listiterator object="" at="" 0x8262e4c="">
>>>
>>> type(bb)
<type 'listiterator'="">
iter함수를 직접 호출하는 경우도 아래와 같이 동일합니다.
>>> cc = aa.__iter__()
>>>
>>> cc
<listiterator object="" at="" 0x8262ecc="">
>>>
>>> type(cc)
<type 'listiterator'="">
>>>
자, 이제 bb나, cc라는 listiterator를 next()와 결합 시켜서 사용 가능합니다.
>>> bb.next()
1
>>> next(bb)
2
>>> bb.next()
3
>>> next(bb)
4
>>> bb.next()
5
>>> bb.next()
6
>>>
next()를 직접 호출 시켜서도 사용이 가능합니다.
이때 주의할것은, next()를 얻어오지 못하는 경우 아래와 같이 예외가 발생합니다.
>>> bb.next()
Traceback (most recent call last):
File "", line 1, in
StopIteration
>>>
별도의 예외처리가 필요합니다,
python에는 do~while문이 왜 없을까 하며..
php코드의 do~while문을 python코드로 컴버팅하다 보니 활용하게 된 함수들(iter, next)입니다 ^^
'개발 > python' 카테고리의 다른 글
[python] 변수의 type 확인 (0) | 2014.02.18 |
---|---|
[python] detect module (2) | 2013.07.03 |
[python] map() 활용 (0) | 2013.06.13 |
[python] 특정 디렉토리의 파일 카운트 (0) | 2013.06.12 |
[python] SimpleXMLRPCServer 호환성 (0) | 2012.11.09 |
댓글
최근에 올라온 글
최근에 달린 댓글
글 보관함
- Total
- Today
- Yesterday