티스토리 뷰

IT/Python

[Python] 루프 테크닉

Dragonz 2020. 7. 17. 17:12
반응형

 

딕셔너리를 이용하여 루핑할 때 items() 메소드를 이용하면 키와 값을 동시에 얻을 수 있다.

>>> knights = {'gallahad': 'the pure', 'robin': 'the brave'}
>>> for k, v in knights.items():
...     print(k, v)
...
gallahad the pure
robin the brave

 

items() 메소드를 이용한 루프

 

시퀀스를 루핑할 때 enumerate() 메소드를 사용하면 위치 인덱스와 대응하는 값을 동시에 얻을 수 있다.

>>> for i, v in enumerate(['tic', 'tac', 'toe']):
...     print(i, v)
...
0 tic
1 tac
2 toe

 

enumerate() 메소드를 이용한 루프

 

둘이나 그 이상의 시퀀스를 동시에 루핑할때 zip() 메소드로 엔트리 쌍을 만들 수 있다.

>>> questions = ['name', 'quest', 'favorite color']
>>> answers = ['lancelot', 'the holy grail', 'blue']
>>> for q, a in zip(questions, answers):
...     print('What is your {0}?  It is {1}.'.format(q, a))
...
What is your name?  It is lancelot.
What is your quest?  It is the holy grail.
What is your favorite color?  It is blue.

 

zip() 메소드를 이용한 루프

 

시퀀스를 거꾸로 루핑하려면 reversed() 메소드를 호출하면 된다.

>>> for i in reversed(range(1, 10, 2)):
...     print(i)
...
9
7
5
3
1

 

reversed() 메소드를 이용한 루프

 

정렬된 순서로 시퀀스를 루핑하기 위해서는 sorted() 함수를 이용하면 된다. 소스 수정 없이 정렬된 새 리스트를 얻을 수 있다.

>>> basket = ['apple', 'orange', 'apple', 'pear', 'orange', 'banana']
>>> for f in sorted(set(basket)):
...     print(f)
...
apple
banana
orange
pear

 

sorted() 메소드를 이용한 루프

 

 

END

반응형

'IT > Python' 카테고리의 다른 글

[Python] 출력  (0) 2020.08.01
[Python] 모듈  (0) 2020.08.01
[Python] 딕셔너리  (0) 2020.07.16
[Python] 집합  (0) 2020.07.16
[Python] 튜플  (0) 2020.07.14
댓글
공지사항