6개의 댓글이 있습니다.
-
-
hyunhwan -
리스트 수가 여럿일 때는 아래의 링크에 나온
itertools.combinations
를 사용하시면 간단히 해결 될 것 같네요.
https://docs.python.org/2/library/itertools.html#itertools.combinations앞선 구현과 유사하게 list comprehension 을 이용해서는 가변적으로 처리하기 힘들지 싶습니다.
7년 전 link
-
-
-
hyunhwan -
list comprehension의 경우가 제 생각에는 메모리를 많이 소비할 것 같은데요? 그리고 itertools.combinations는 iterator이기 때문에 크게 메모리에 영향을 미치지 않을 것 같습니다. 아래의 코드 참조해주세요.
import itertools a = [1,2,3,4,5] it = itertools.combinations(a,2) print(it.next()) print(it.next())
푸는 문제와 소스코드를 첨부하셔서 질문해주시면 원하시는 답변을 받는데 도움이 될 것 같습니다.
7년 전 link
-
-
정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
단델리언
안녕하세요!
문제를 풀다가 제가 원하는 것을 파이썬으로 구현하는데 있어서
어려움이 있는데 해결책을 찾지 못해서 질문드립니다.
예를 들면 list1, list2 가
list1 = ['a', 'b', 'c']
list2 = ['d','e']
이렇게 있다고 한다면
각 리스트들에서 하나씩의 항목을 뽑아 튜플로 만들어 가능한
모든 조합을 하나의 리스트로 만들고 싶은데
이 경우에는
result = [(char1, char2) for char1 in list1 for char2 in list2]
이렇게 하면 되는 건 알고 있습니다
그런데 만약 해당되는 리스트들의 개수가 가변적인 경우에도
가능한가요?
예를 들면 리스트가 4개 일때도 있고 5개 일때도 있는 것 처럼
전체의 개수는 알수 있는데 그게 가변적일 때 함수를 통해서 처리가 가능한가요? 한참 고민하고 찾아봤는데 도저히 모르겠어서 질문드립니다.
7년 전