파이썬/파이썬(python) 초급

[9-2 파이썬] 중첩, nesting, 딕셔너리, 리스트, 딕셔너리 적는 방법, 딕셔너리 안의 딕셔너리, 리스트 안의 딕셔너리, 딕셔너리 안의 리스트, 파이썬 실전 예제

Olivia-BlackCherry 2022. 8. 17. 11:18

삼성 고 이건희 회장의 컬렉션이었던 

인왕제색도를 보면, 

 

산이나 나무를 단순하게 하나로 표현하지 않고

겹겹이 중첩시켜 표현하였다. 

중첩된 나무, 나무 안에서도 중첩된 나뭇잎들이 모여 

커다란 산을 이룬다.

 

파이썬의 중첩, nesting의 의미도 크게 다르지 않다. 

 

 

1. 딕셔너리에서 중첩이란?

딕셔너리의 기본 형태는 {key: value}이다. 

value의 값에 단순한 값을 넣는 것이 아니라, 

리스트나 딕셔너리를 넣을 수 있다. 

{
key: [list],
key2: {dict},
}

즉, 딕셔너리에서 중첩이란

그 안에 다른 리스트나, 딕셔너리를 넣는 것을 말한다. 

 

중첩을 하면, 

구조는 더 복잡해보이지만

데이터를 저장하는데 더 다양한 선택지를 고려할 수 있다.

 

다양한 구조를 살펴보자.

게시글 맨 아래에는 실제 화면을 확인할 수 있는 

코드를 넣었다.

 

{key: value} 형태의

평범한 딕셔너리의 구조이다. 

 

 

2. 딕셔너리 안의 리스트

 

 

3. 딕셔너리 안의 딕셔너리

 

 

4. 리스트 안의 딕셔너리

 

 

5. 보기 좋게 정렬하기

덧붙여, 딕셔너리 값으로는 문자열, 리스트, 정수형 등 모든 데이터 타입이 올 수 있다.

 

 

6. 실제 코드

아래의 재생버튼 ▶을 눌러 실행하면 됩니다.

 

 

 

7. 실전 예제

travel log 리스트에 새로운 딕셔너리 값을 추가하는 add_new_country 함수를 만들어보자. 

travel_log = [
{
  "country": "France",
  "visits": 3,
  "cities": ["파리", "니스", "에즈"]
},
{
  "country": "Canada",
  "visits": 5,
  "cities": ["제스퍼", "캘거리", "벤쿠버"]
},
]
add_new_country("Swiss", 2, ["체르마트", "제네바", "취리히"])
print(travel_log)

 

아래의 재생버튼 ▶을 눌러 실행하면 됩니다.