본문 바로가기
PL (Programming Language)/Python

[Python] 리스트 생성 및 초기화 방법 (feat. 2차원 리스트 초기화)

by jangThang 2022. 4. 11.
반응형

 리스트를 생성하고 초기화하는 방법에 대해서 알아보겠습니다.

 

[ Contents ]

     

     

    1. 리스트 생성 및 초기화

    list = [0] * N

     리스트 연산을 이용해서 [0]이 N개인 리스트를 생성할 수 있습니다.

     

     

    range(start, end, stride): start부터 end-1까지, stride 만큼씩 증가하는 수열

     range 함수를 이용해서 특정 수열을 생성할 수 있습니다. 보통은 for문에서 많이 사용하나, 리스트 초기화에도 사용할 수 있습니다.

     

     stride를 2씩 증가시켜서, 1부터 10까지 중 홀수만 포함된 리스트를 생성할 수도 있습니다.

     

     

     

    2. 2차원 리스트 초기화

     1차원 초기화와 마찬가지로, 2차원 초기화도 리스트 곱셈을 이용해서 하면 될 거 같습니다.

     하지만, 이러한 초기화에는 큰 문제점이 있습니다.

     

     

     리스트를 4개 복제한 것이기 때문에, 하나만 바꿔도 다른 리스트까지 전부 값이 바뀝니다. 즉, 똑같은 리스트가 4개 있는 꼴인 거죠.

     

    n*m인 2차원 리스트: [ [0]*m for _ in range(n) ]

     따라서, 조금 복잡하더라도 위와 같은 방식으로 생성해야 합니다. 반복문 for문을 이용해서 n번 생성해줍니다. (리스트 안에도 반복문이나 조건문이 들어갈 수 있으며, 이를 리스트 컴프리헨션[List Comprehension]이라고 합니다.)

     

     위와 같은 방식으로 생성하면, 한 리스트가 변경되어도 다른 리스트는 영향을 받지 않습니다.

     

    star가 되고나서 Tistory

    반응형

    댓글