파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

는 시작과 끝을 표시하기 위해 대괄호 [ ] 를 사용해요. 리스트를 생성하려면 저장할 숫자나 문자열 같은 데이터들을 쉼표로 분리하여 대괄호 안에 넣으면 돼요. 그리고 리스트 안에 저장된 각각의 데이터를 항목(item)이라고 해요.

히어로들의 이름 리스트는 아래 그림을 참고해 주세요 :-)

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

2. 리스트 생성과 추가

앞의 heroes와 numbers는 모두 리스트 변수랍니다. 리스트 변수에는 숫자, 문자 등의 여러 자료를 묶어서 한꺼번에 저장할 수 있어요. 책의 목차 또는 색인을 살펴보면 어떤 주제가 몇 페이지에 있는지 정보의 위치를 알 수 있어요. 인덱스(index)는 사전적으로 '색인'을 의미해요. 인덱스란 리스트에서 항목의 위치를 알려주는 번호랍니다. 리스트에서는 인덱스가 0번부터 시작하여 그 값이 1씩 증가하면서 순차적으로 해당 정보가 저장된 위치를 나타내줘요.

아래 그림을 보시면 더 쉽게 이해할 수 있어요.

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

리스트를 생성할 때 교과목 리스트처럼 항목이 포함되도록 만들 수 있어요.

slist=['영어','수학','사회','과학']

하지만 몇 개의 항목이 리스트에 들어갈지를 예측할 수 없는 경우가 종종 있어요. 이런 경우에는 공백 리스트를 선언하여 시작하고 필요한 경우 항목을 추가하면 좋습니다.

[ ] 안에 항목이 없으면 공백 리스트입니다. 리스트에 항목을 추가하려면 리스트가 먼저 생성되어 있어야 해요.

먼저 공백 리스트를 만들고 항목 "사과"를 넣어주세요.

cart=[ ]

cart.append("사과")

위 cart 리스트에 항목 "세제"를 추가해 보세요.

cart.append("세제")

그리고 cart 리스트를 출력하면?

print(cart)

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

 

3. 리스트 항목에 접근하기

앞에서 언급된 인덱스를 사용하면 리스트 항목에 접근해서 읽어볼 수 있어요. 아래 그림을 보며 차근차근 따라서 해보세요 :-)

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

letters[ : ]를 이용하면 리스트의 복사본을 손쉽게 생성할 수 있어요.

 

 

4. 리스트 항목의 변경과 추가

앞에서 배운 인덱스를 사용하여 지정된 위치의 항목을 변경할 수 있어요.

복습 : 리스트에서는 인덱스가 0번부터 시작하여 그 값이 1씩 증가

cart=['사과','세제',화장지','치약']

cart[1]='섬유 유연제'

print(cart)

여기서 cart[1]='섬유 유연제' 는 인덱스가 1번인 항목에 '섬유 유연제'를 새롭게 저장한다는 의미입니다. 따라서 기존의 자료 '세제'는 사라지게 됩니다.

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

리스트 항목을 추가하기 위해서는 앞에서 봤듯이 append( ) 함수를 사용해요. 해당 항목을 리스트의 끝에 추가합니다.

그렇다면 리스트의 중간에 항목을 추가하는 방법도 있을까요? insert(index, item)을 사용하면 index 위치에 항목 item을 추가합니다. 새로운 항목이 추가되면 기존에 있던 index 위치부터의 항목들은 뒤로 밀려 나가며 인덱스 번호가 1씩 증가하는게 당연하겠죠?

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

 

5. 리스트 항목 삭제하기

리스트의 항목은 삭제도 가능하답니다. 아래 책 내용을 읽어보세요~~ 왕초보도 쉽게 이해할 수 있도록 기초부터 친절하게 설명되어 있답니다 :-)

 

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

'시간순삭 파이썬' 제7장의 일부를 소개해 드렸어요. 어떠셨나요? 리스트의 기초 개념을 쉽고 재미있게 익히셨나요? :-) 책에는 리스트에서 항목을 탐색하기, 리스트 정렬하기, 2차원 구조 리스트 만들기, 리스트에 반복문 사용하는 방법 등이 더 포함되어 있답니다. 궁금하신 분들께서는 책을 참고해 주세요~

그리고 이 파이썬 기초 책에는 흥미로운 실습예제(LAB)와 연습문제가 듬~뿍 포함되어 있어요!! 학교에서 배운 수학, 과학 주제가 융합된 예제라서 더 쉽게 다가갈 수 있어요. 다양한 프로그램을 스스로 작성해보며 성취감을 느껴보세요!!

 

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

 

"이 포스팅은 생능출판사

시간순삭 파이썬을 발췌하여

작성되었습니다."

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi

​여러분의 파이썬 독학을 응원합니다!!

 

예스24 http://www.yes24.com/Product/Goods/92087970

교보문고 http://www.kyobobook.co.kr/product/detailViewKor.laf?mallGb=KOR&ejkGb=KOR&linkClass=&barcode=9788970504650

파이썬의 리스트에는 리스트의 요소로 다른 리스트를 넣을 수가 있습니다. 이렇게 리스트 안에 리스트를 넣은 것을 다차원 리스트 또는 다중리스트라고 부릅니다. 여기서는 이중(2차원)리스트를 만드는 방법과 요소에 접근하는 방법을 설명합니다. 

 

 

목차

이중(2차원)리스트를 만들기

이중(2차원)리스트의 요소에 접근하기

 

 

 

 

 

이중(2차원)리스트를 만들기

 

이중(2차원) 리스트를 만드는 방법은 일반 리스트를 만드는 방법과 다르지 않습니다. 리스트의 요소의 값으로 리스트를 지정한기만 하면 됩니다. 

 

 

[요소1, 요소2, ... ]

 

 

예를 들어서

 

첫 번째 요소로 ["철수", 28], 

두 번째 요소로 ["미영", 39],

세 번째 요소로 ["길동", 29]

 

를 포함하는 리스트는 다음과 같이 만들 수 있습니다. 

 

 

[["철수", 28], ["미영", 39], ["길동", 29]]

 

이렇게 리스트 안에 리스트를 포함하고 있는 것을 다차원 리스트 또는 다중 리스트라고 부릅니다. 예에서는 이중(2차원)리스트를 만들어 보았습니다. 

 

알아보기 쉽도록 요소를 세로로 나열할 수도 있습니다. 

 

 

 

namelist = [["철수", 28],

               ["미영", 39],

               ["길동", 29]]

 

이것으로 아래와 같은 이중 리스트(2차원 리스트)가 만들어졌습니다. 

 

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi
파이썬 이중(2차원) 리스트

 

 

 

 

 

이중(2차원)리스트의 요소에 접근하기

 

리스트의 요소에 다른 리스트가 포함되어 있기 때문에 인덱스를 지정해서 요소에 접근하면 각각 값으로 지정된 리스트에 접근하게 됩니다. 

 

namelist = [["철수", 28], ["미영", 39], ["길동", 29]]

print(namelist[0])
--> ["철수", 28]

print(namelist[1])
--> ["미영", 39]

print(namelist[2])
--> ["길동", 29]

 

인덱스를 지정해서 접근한 리스트에 포함되어 있는 각각의 요소에 접근하려면 다시 한번 인덱스를 지정해주면 됩니다. 

 

 

파이썬 리스트 안에 리스트 만들기 - paisseon liseuteu an-e liseuteu mandeulgi
파이썬 이중(2차원) 리스트

 

 

namelist = [["철수", 28], ["미영", 39], ["길동", 29]]

print(namelist[0][0])
--> "철수"
print(namelist[0][1])
--> 28

print(namelist[1][0])
--> "미영"
print(namelist[1][1])
--> 39

print(namelist[2][0])
--> "길동"
print(namelist[2][1])
--> 29

 

리스트는 배열처럼 사용할 수 있고 다중(다차원)리스트는 다차원 배열처럼 사용할 수 있습니다. 

 

 

샘플 코드

 

namelist = [["철수", 28], ["미영", 39], ["길동", 29]]

for p in [0, 1, 2]:
    for m in [0, 1]:
        print("[" + str(p) + "][" + str(m) + "] = ", end='')
        print(namelist [p][m])

>> [0][0] = 철수
>> [0][1] = 28
>> [1][0] = 미영
>> [1][1] = 39
>> [2][0] = 길동
>> [2][1] = 29

 

이중(이차원) 리스트에서 for문을 사용해서 요소에 순서대로 접근해서 출력할 수 있었습니다. 

 


이상으로 이중(이차원) 리스트를 만들어 요소에 접근하는 방법을 해설했습니다. 

 

 

 

 

 

같이 보면 좋은 글

 

 

【Python 활용 방법 총정리】 파이썬으로 할 수 있는 것은?

파이썬(Python)은 최근 가장 큰 인기를 얻고 있는 프로그래밍 언어입니다. 하지만 아직 프로그래밍에 익숙하지 않다면 자연스럽게 이런 의문이 떠오릅니다. 파이썬으로는 어떤 걸 할 수 있어? 파

easytoread.tistory.com

 

【Python】 파이썬 이중 for문 + 리스트 컴프리핸션

파이썬 이중 for문으로 2D 리스트 만들기 2D 리스트란 리스트 안에 리스트가 들어가 있는 상태의 리스트를 의미합니다. 예를 들면 아래와 같습니다. [ [0, 1, 2, 3, 4] [5, 6, 7, 8, 9] [10, 11, 12, 13, 14] [15,..

easytoread.tistory.com

 

【파이썬 랜덤 리스트 생성】 Python 리스트 랜덤 넘버(무작위 숫자)로 채우기

for 문을 사용해서 파이썬 랜덤 리스트 생성 아래와 같은 방식으로 리스트에 무작위 숫자를 넣을 수 있습니다. import random my_list = [] for value in range(0, 20): my_list.append(random.randint(0,100)) 무..

easytoread.tistory.com

 

파이썬 | 조건에 맞는 값만 리스트에 넣기 | 리스트 컴프리헨션

if문 한 줄로 작성하기 아래의 코드를 동작시키기면 'num은 10이다'가 출력될 것입니다. num = 10 if num == 10: print('num은 10이다') else: print('num은 10이 아니다') 위 코드를 한 줄로 작성해 보겠습니다...

easytoread.tistory.com

 

파이참 무료 다운로드 | 설치 방법 | 기본 사용 방법

파이참은 Python 유저들에게 가장 큰 인기를 얻고 있는 통합 개발 환경(IDE) 중 하나입니다. 여기서는 파이참 무료 버전(Community)을 다운로드 하는 법과 설치 방법 그리고 기본 사용 방법까지 확인해

easytoread.tistory.com

 

파이참 무료와 유료 버전의 차이 | 어느 쪽을 사용해야 할까?

파이참(PyCharm)에는 아래의 3가지 버전이 있습니다. Professinal(프로페셔널) Community(커뮤니티) Educatinal(에듀케이셔널) 이 중 Professinal은 유료 버전이고 Community와 Educational은 무료 버전입니다...

easytoread.tistory.com

 

파이썬(Python)과 비단뱀 | 파이썬이라는 이름의 유래

Python은 최근 가장 많은 인기를 얻고 있는 프로그래밍 언어입니다. 언어를 공부하다보면 한 번쯤은 'Python이라는 게 무슨 의미지?', 'Python란 이름은 어디에서 나온 거지?'라는 의문을 가지게 되는