파이썬

[python] for 반복문과 append 활용 리스트 만들기

JJONY 2019. 12. 7. 20:41

 

#for 반복문으로 1차원 리스트 만들기

a = []    # 빈 리스트 생성
 
for i in range(10):
    a.append(0)    # append로 요소 추가
 
print(a)
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

 

 

#for 반복문으로 2차원 리스트 만들기

a = []    # 빈 리스트 생성
 
for i in range(3):
    line = []              # 안쪽 리스트로 사용할 빈 리스트 생성
    for j in range(2):
        line.append(0)     # 안쪽 리스트에 0 추가
    a.append(line)         # 전체 리스트에 안쪽 리스트를 추가
 
print(a)
[[0, 0], [0, 0], [0, 0]]

 

#리스트 표현식으로 2차원 리스트 만들기 (for문 줄이기)

a = [[0 for j in range(2)] for i in range(3)]
[[0, 0], [0, 0], [0, 0]]

 

#리스트 원소 개수만큼 리스트 만들기

a = [3, 1, 4, 3, 5]    # 가로 크기를 저장한 리스트
b = []    # 빈 리스트 생성
 
for i in a:      # 가로 크기를 저장한 리스트로 반복
    line = []    # 안쪽 리스트로 사용할 빈 리스트 생성
    for j in range(i):    # 리스트 a에 저장된 가로 크기만큼 반복
        line.append(0)
    b.append(line)        # 리스트 b에 안쪽 리스트를 추가
 
print(b)
[[0, 0, 0], [0], [0, 0, 0, 0], [0, 0, 0], [0, 0, 0, 0, 0]]

 

#리스트 표현식으로 표현해보기

a = [[0] * i for i in [3, 1, 4, 3, 5]]
[[0, 0, 0], [0], [0, 0, 0, 0], [0, 0, 0], [0, 0, 0, 0, 0]]