본문 바로가기
파이썬

파이썬 Python의 목록에있는 각 튜플의 첫 번째 요소를 가져옵니다.

by º기록 2020. 12. 20.
반응형

SQL 쿼리는 다음과 같은 튜플 목록을 제공합니다.

[(elt1, elt2), (elt1, elt2), (elt1, elt2), (elt1, elt2), (elt1, elt2), ...]

각 튜플의 모든 첫 번째 요소를 갖고 싶습니다. 지금은 이것을 사용합니다.

rows = cur.fetchall()
res_list = []
for row in rows:
    res_list += [row[0]]

하지만 더 나은 구문이있을 수 있다고 생각합니다. 더 나은 방법을 알고 있습니까?

 

해결 방법

 


res_list = [x[0] for x in rows]

아래는 데모입니다.

>>> rows = [(1, 2), (3, 4), (5, 6)]
>>> [x[0] for x in rows]
[1, 3, 5]
>>>

또는 x [0] 대신 unpacking을 사용할 수 있습니다.

res_list = [x for x,_ in rows]

아래는 데모입니다.

>>> lst = [(1, 2), (3, 4), (5, 6)]
>>> [x for x,_ in lst]
[1, 3, 5]
>>>

두 방법 모두 실질적으로 동일한 작업을 수행하므로 원하는 것을 선택할 수 있습니다.

 

참조 페이지 https://stackoverflow.com/questions/22412258

 

 

반응형

댓글