Python 자료구조 기본 정리
Python 자료구조에 대해 기본적인 부분만 정리 해보려고 한다!
1) List
List
는 값을 순차열 적으로 저장 할 수 있다
List
안에는 어떤 자료형이던지 포함시킬 수 있다 (List
안에 List
를 넣을 수도 있음)
- 선언 시
[]
로 감싸서 만들거나 list()
로도 만들 수 있다
a = [1, 2, 3]
b = list(range(5)) # [0, 1, 2, 3, 4]
- 값들의 순서가 존재하며
index
라고 한다
- 인덱싱과 슬라이싱이 가능하다
2) Tuple
Tuple
은 기본적으로 List
와 동일하지만 몇 가지 차이점이 있다
List
는 선언 후에도 수정이 가능하지만 Tuple
은 수정이 불가능하다
- 선언 시
()
로 감싸서 만들거나 tuple()
로도 가능하다
a = (1, 2, 3)
b = tuple(range(5))
- 인덱싱이나 슬라이싱 하는 방법은 모두
List
와 동일하다
- 일반적으로 2개에서 5개 사이의 요소들을 저장할 때 사용됨
- 특정 데이터를
ad hoc(즉석적으로)
하게 표현하고 싶을 때 사용
List
보다 차지하는 메모리 용량이 적다
- 수정이 필요없고 간단한 형태의 데이터를 표현시에는
Tuple
이 훨씬 더 효과적
3) Set
Set
는 List
와 마찬가지로 여러 다양한 타입의 요소들을 저장할 수 있다
- 집합이다
Set
는 요소들이 순서대로 저장되어 있지 않아서 for
문에서 읽어 들일 때도 무작위 순서로 나오게 된다
- 순서가 없기 때문에 인덱싱도 없음
- 중복된 값 저장 불가 (새로 저장하려고 하는 요소와 동일한 값이 있으면 새로운 요소가 전 요소를 치환(
replace
)함
- 선언시
{}
으로 감싸서 만들거나 set()
함수를 사용해 만들 수 있고 set()
을 사용하게 된다면 List
를 parameter
로 전달해야 한다
a = {1, 2, 3, 3}
-> # {1, 2, 3}
b = set([1, 1, 2, 2])
-> # {1, 2}
c = set(1, 2)
-> # TypeError 발생
❌
4) Dictionary
Dictionary
는 Key
와 Value
의 쌍으로 이루어져 있는 자료구조이다
- 선언 시
{}
로 선언 하는건 세트와 똑같지만 Key : Value
로 값을 넣어야 한다
a = { "name" : "kyle", "address" : "Gunpo"}
List
로 되어있는 Tuple
이나 List
안에 Tuple
이 있는 경우에는dict()
로도 선언이 가능
a = dict(([1, 2], [3, 4], [5, 6]))
->
{1: 2, 3: 4, 5: 6}
- 순서가 없어서 인덱싱을 사용할 수 없고
Key
로 요소를 읽을 수 있다
a["name"]
-> # "kyle"
Key
값은 중복이 불가하고 이미 존재하는 Key
값을 추가하게 된다면 이미 존재하던 Key
값의 요소를 치환한다
a = { "name" : "kyle", "name" : "junyoung"}
print(a)
# {'name' : 'junyoung'}
Assignment
1) Set과 Dictionary의 차이
Dictionary
는 Key
와 Value
의 값으로 이루어져 있지만 Set
는 값이 Key
, Value
쌍이 아니라 그냥 요소 하나로 기능을 하는 부분에서의 차이가 존재한다
2) List와 Tuple의 차이
List
는 선언 후에도 요소들을 추가 / 삭제 등 수정이 가능하지만 Tuple
은 선언한 이후에는 요소를 수정할 수 없다
List
는 위와 같이 수정이 가능하게 되어있는 자료구조이기 때문에 Tuple
보다 차지하는 메모리 용량이 더 크다
List
는 []
를 사용하지만 Tuple
은 ()
을 사용한다!
Author And Source
이 문제에 관하여(Python 자료구조 기본 정리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@ambitiouskyle/Python-자료구조-기본-정리
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
List
는 값을 순차열 적으로 저장 할 수 있다List
안에는 어떤 자료형이던지 포함시킬 수 있다 (List
안에 List
를 넣을 수도 있음)[]
로 감싸서 만들거나 list()
로도 만들 수 있다
a = [1, 2, 3]
b = list(range(5)) # [0, 1, 2, 3, 4]
index
라고 한다Tuple
은 기본적으로List
와 동일하지만 몇 가지 차이점이 있다List
는 선언 후에도 수정이 가능하지만Tuple
은 수정이 불가능하다- 선언 시
()
로 감싸서 만들거나tuple()
로도 가능하다a = (1, 2, 3)
b = tuple(range(5))
- 인덱싱이나 슬라이싱 하는 방법은 모두
List
와 동일하다 - 일반적으로 2개에서 5개 사이의 요소들을 저장할 때 사용됨
- 특정 데이터를
ad hoc(즉석적으로)
하게 표현하고 싶을 때 사용 List
보다 차지하는 메모리 용량이 적다- 수정이 필요없고 간단한 형태의 데이터를 표현시에는
Tuple
이 훨씬 더 효과적
3) Set
Set
는 List
와 마찬가지로 여러 다양한 타입의 요소들을 저장할 수 있다
- 집합이다
Set
는 요소들이 순서대로 저장되어 있지 않아서 for
문에서 읽어 들일 때도 무작위 순서로 나오게 된다
- 순서가 없기 때문에 인덱싱도 없음
- 중복된 값 저장 불가 (새로 저장하려고 하는 요소와 동일한 값이 있으면 새로운 요소가 전 요소를 치환(
replace
)함
- 선언시
{}
으로 감싸서 만들거나 set()
함수를 사용해 만들 수 있고 set()
을 사용하게 된다면 List
를 parameter
로 전달해야 한다
a = {1, 2, 3, 3}
-> # {1, 2, 3}
b = set([1, 1, 2, 2])
-> # {1, 2}
c = set(1, 2)
-> # TypeError 발생
❌
4) Dictionary
Dictionary
는 Key
와 Value
의 쌍으로 이루어져 있는 자료구조이다
- 선언 시
{}
로 선언 하는건 세트와 똑같지만 Key : Value
로 값을 넣어야 한다
a = { "name" : "kyle", "address" : "Gunpo"}
List
로 되어있는 Tuple
이나 List
안에 Tuple
이 있는 경우에는dict()
로도 선언이 가능
a = dict(([1, 2], [3, 4], [5, 6]))
->
{1: 2, 3: 4, 5: 6}
- 순서가 없어서 인덱싱을 사용할 수 없고
Key
로 요소를 읽을 수 있다
a["name"]
-> # "kyle"
Key
값은 중복이 불가하고 이미 존재하는 Key
값을 추가하게 된다면 이미 존재하던 Key
값의 요소를 치환한다
a = { "name" : "kyle", "name" : "junyoung"}
print(a)
# {'name' : 'junyoung'}
Assignment
1) Set과 Dictionary의 차이
Dictionary
는 Key
와 Value
의 값으로 이루어져 있지만 Set
는 값이 Key
, Value
쌍이 아니라 그냥 요소 하나로 기능을 하는 부분에서의 차이가 존재한다
2) List와 Tuple의 차이
List
는 선언 후에도 요소들을 추가 / 삭제 등 수정이 가능하지만 Tuple
은 선언한 이후에는 요소를 수정할 수 없다
List
는 위와 같이 수정이 가능하게 되어있는 자료구조이기 때문에 Tuple
보다 차지하는 메모리 용량이 더 크다
List
는 []
를 사용하지만 Tuple
은 ()
을 사용한다!
Author And Source
이 문제에 관하여(Python 자료구조 기본 정리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@ambitiouskyle/Python-자료구조-기본-정리
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Set
는 List
와 마찬가지로 여러 다양한 타입의 요소들을 저장할 수 있다Set
는 요소들이 순서대로 저장되어 있지 않아서 for
문에서 읽어 들일 때도 무작위 순서로 나오게 된다replace
)함{}
으로 감싸서 만들거나 set()
함수를 사용해 만들 수 있고 set()
을 사용하게 된다면 List
를 parameter
로 전달해야 한다
a = {1, 2, 3, 3}
-># {1, 2, 3}
b = set([1, 1, 2, 2])
-># {1, 2}
c = set(1, 2)
-># TypeError 발생
❌
Dictionary
는Key
와Value
의 쌍으로 이루어져 있는 자료구조이다- 선언 시
{}
로 선언 하는건 세트와 똑같지만Key : Value
로 값을 넣어야 한다a = { "name" : "kyle", "address" : "Gunpo"}
List
로 되어있는Tuple
이나List
안에Tuple
이 있는 경우에는dict()
로도 선언이 가능a = dict(([1, 2], [3, 4], [5, 6]))
->
{1: 2, 3: 4, 5: 6}
- 순서가 없어서 인덱싱을 사용할 수 없고
Key
로 요소를 읽을 수 있다a["name"]
-># "kyle"
Key
값은 중복이 불가하고 이미 존재하는Key
값을 추가하게 된다면 이미 존재하던Key
값의 요소를 치환한다a = { "name" : "kyle", "name" : "junyoung"} print(a) # {'name' : 'junyoung'}
Assignment
1) Set과 Dictionary의 차이
Dictionary
는Key
와Value
의 값으로 이루어져 있지만Set
는 값이Key
,Value
쌍이 아니라 그냥 요소 하나로 기능을 하는 부분에서의 차이가 존재한다
2) List와 Tuple의 차이
List
는 선언 후에도 요소들을 추가 / 삭제 등 수정이 가능하지만Tuple
은 선언한 이후에는 요소를 수정할 수 없다List
는 위와 같이 수정이 가능하게 되어있는 자료구조이기 때문에Tuple
보다 차지하는 메모리 용량이 더 크다List
는[]
를 사용하지만Tuple
은()
을 사용한다!
Author And Source
이 문제에 관하여(Python 자료구조 기본 정리), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@ambitiouskyle/Python-자료구조-기본-정리저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)