반응형
리스트 / 튜플 쌍을 두리스트 / 튜플로 풀기
가능한 중복 :
파이썬에서 조옮김 / 압축 풀기 기능
다음과 같은 목록이 있습니다.
list = (('1','a'),('2','b'),('3','c'),('4','d'))
목록을 두 목록으로 분리하고 싶습니다.
list1 = ('1','2','3','4')
list2 = ('a','b','c','d')
예를 들어 다음과 같이 할 수 있습니다.
list1 = []
list2 = []
for i in list:
list1.append(i[0])
list2.append(i[1])
그러나 더 우아한 해결책이 있는지 알고 싶습니다.
>>> source_list = ('1','a'),('2','b'),('3','c'),('4','d')
>>> list1, list2 = zip(*source_list)
>>> list1
('1', '2', '3', '4')
>>> list2
('a', 'b', 'c', 'd')
편집 :
참고
zip(*iterable)
자신의 역이다 :
>>> list(source_list) == zip(*zip(*source_list))
True
두 목록으로 포장을 풀면 다음과 같이됩니다.
>>> list1, list2 = zip(*source_list)
>>> list(source_list) == zip(list1, list2)
True
Rocksportrocker가 제안한 추가 사항.
list1= ( x[0] for x in source_list )
list2= ( x[1] for x in source_list )
참고 URL :
https://stackoverflow.com/questions/7558908/unpacking-a-list-tuple-of-pairs-into-two-lists-tuples
반응형
'Programming' 카테고리의 다른 글
지역 민감 해싱을 이해하는 방법? (0) | 2020.06.13 |
---|---|
Java에서 사용자 정의 예외를 작성하는 방법은 무엇입니까? (0) | 2020.06.13 |
쿼리 실행시 Sequelize가 콘솔에 SQL을 출력하지 못하게 하시겠습니까? (0) | 2020.06.13 |
긴 단어가 내 div를 깨는 것을 방지하는 방법은 무엇입니까? (0) | 2020.06.13 |
왜 2 mod 4 = 2입니까? (0) | 2020.06.13 |