python에서 리스트 내의 특정 인덱스의 리스트 만드는 방법.

kkb의 이미지

python에서 리스트들의 리스트 내에서 특정 인덱스의 요소만으로 리스트를 만들 때,
저는 아래와 같이 만드는데
혹시 다른 방법도 있을까요?
파이썬에 다양한 방법들이 많던데 보통 일반적으로 어떤 식으로 만드는지 질문해봅니다.

l = [[0,1,2], [3,4,5], [6,7,8]]
n = []
for i in range(len(l)):
    n.append(l[i][1])
 
print (n)

라스코니의 이미지

chatGPT에 물어본 결과입니다.

1) map 기능을 이용한 경우
n = list(map(lambda sublist: sublist[1], l))

2) numpy를 이용한 경우
import numpy as np

l = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

numpy_array = np.array(l)
n = numpy_array[:, 1]
print(n.tolist())

jick의 이미지

보통 이렇게들 하지 않나요? (List comprehension이라고 합니다.)

original = [[0,1,2], [3,4,5], [6,7,8]]
n = [x[1] for x in original]
익명 사용자의 이미지

사족을 좀 붙이면...

original = [[0,1,2], [3,4,5], [6,7,8], [9]]
n = [x[1] for x in original if len(x) > 1]
kkb의 이미지

감사합니다. 사족이 아니라 필요하겠네요.

kkb의 이미지

감사합니다.