포켓몬의 조합
포켓몬 트레이너인 Ash가 다섯 마리의 포켓몬을 마주쳤어요. 이 포켓몬들은 세션의 리스트(pokemon)에 로드되어 있으며, 편의를 위해 콘솔에 출력해 두었습니다.
Ash는 이 가운데 일부를 잡고 싶어 하지만, 그의 포케덱스는 한 번에 포켓몬을 두 마리만 저장할 수 있어요. itertools 모듈의 combinations를 사용해 Ash가 잡을 수 있는 포켓몬의 가능한 쌍을 확인해 봅시다.
이 연습은 강의의 일부입니다
효율적인 Python 코드 작성
연습 안내
itertools에서combinations를 임포트하세요.pokemon리스트에서 가능한 모든 포켓몬 쌍을 담는 combinations objectcombos_obj를 만드세요. 한 쌍은 포켓몬2마리로 구성됩니다.combos_obj를 리스트combos_2로 언패킹하세요.- Ash가 포케덱스를 업그레이드해 이제 포켓몬을 네 마리 저장할 수 있게 되었어요.
combinations를 사용해 서로 다른 포켓몬4마리의 가능한 모든 조합을 모으세요. 이 조합을 별표(*)를 사용해 바로 리스트combos_4에 저장하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Import combinations from itertools
____ ____ ____ ____
# Create a combination object with pairs of Pokémon
combos_obj = ____(____, ____)
print(type(combos_obj), '\n')
# Convert combos_obj to a list by unpacking
combos_2 = ____
print(combos_2, '\n')
# Collect all possible combinations of 4 Pokémon directly into a list
combos_4 = ____
print(combos_4)