반응형
우리는 지금까지 파이썬이 제공하는 기본 자료구조들을 배웠습니다. 아래와 같습니다.
- 리스트
- 튜플
- 딕셔너리
- 집합
type 함수의 반환값은 아래와 같습니다.
list
tuple
dict
set
자료구조들 사이의 변환함수도 위와 동일합니다. 예를들어 어떤 자료구조를 list로 변환하고 싶다면 list( ) 함수를 사용하면 됩니다.
리스트를 튜플로 변환하는 방법은 아래와 같습니다.
>>> L=[1,2,3]
>>> tuple(L)
(1, 2, 3)
튜플을 리스트로 바꾸는 것도 가능합니다.
>>> T=(1,2,3)
>>> list(T)
[1, 2, 3]
딕셔너리를 다른 자료형으로 변환할 때는 key만 변환됩니다.
>>> D={'a':10,'b':20}
>>> list(D)
['a', 'b']
>>> tuple(D)
('a', 'b')
>>> set(D)
{'b', 'a'}
리스트를 딕셔너리로 변형해봅시다.
>>> L=[1,2,3]
>>> dict(L)
Traceback (most recent call last):
File "<pyshell#314>", line 1, in <module>
dict(L)
TypeError: cannot convert dictionary update sequence element #0 to a sequence
오류가 발생합니다. 딕셔너리는 key와 value 두가지 입력값이 필요하므로 아래와 같은 리스트를 사용해야 합니다.
>>> L=[['a',2],['b',5]]
>>> dict(L)
{'a': 2, 'b': 5}
튜플을 딕셔너리로 바꿀 때도 마찬가지입니다.
>>> T=((1,5),(2,6))
>>> dict(T)
{2: 6, 1: 5}
튜플을 딕셔너리로 바꿀 때는 튜플을 사용합니다. 집합의 원소로 리스트가 불가능하기 때문입니다.
>>> S={(1,5),(2,6)}
>>> dict(S)
{2: 6, 1: 5}
요약하면 아래와 같습니다.
변경전 | 변경후 | 함수 | 예시 |
튜플 | 리스트 | list( ) | >>> t=(1,2,3) >>> list(t) [1, 2, 3] |
딕셔너리 | >>> d={'a':1,'b':2} >>> list(d) ['a', 'b'] |
||
집합 | >>> s={1,2,3} >>> list(s) [1, 2, 3] |
||
리스트 | 튜플 | tuple( ) | >>> L=[1,2,3] >>> tuple(L) (1, 2, 3) |
딕셔너리 | >>> d={'a':1,'b':2} >>> tuple(d) ('a', 'b') |
||
집합 | >>> s={1,2,3} >>> tuple(s) (1, 2, 3) |
||
리스트 | 집합 | set( ) | >>> L=[1,2,3] >>> set(L) {1, 2, 3} |
튜플 | >>> t=(1,2,3) >>> set(t) {1, 2, 3} |
||
딕셔너리 | >>> d={'a':1,'b':2} >>> set(d) {'b', 'a'} |
||
리스트 | 딕셔너리 | dict( ) | >>> L=[['a',1],['b',2]] >>> dict(L) {'a': 1, 'b': 2} |
튜플 | >>> t=(('a',1),('b',2)) >>> dict(t) {'a': 1, 'b': 2} |
||
집합 | >>> s={('a',1),('b',2)} >>> dict(s) {'a': 1, 'b': 2} |
반응형
'파이썬 > 통계분석' 카테고리의 다른 글
[파이썬 강의] 36. 가변객체와 불변객체 (객체의 세 특성) (0) | 2021.10.08 |
---|---|
[파이썬 강의] 35. 자료구조 요약하기(리스트,튜플,딕셔너리,집합) (0) | 2021.10.07 |
[파이썬 강의] 33. 집합 연산 (메소드를 이용하는 방법) (0) | 2021.10.07 |
[파이썬 강의] 32. 집합 연산 (연산자를 이용하는 방법) (0) | 2021.10.07 |
[파이썬 강의] 31. 집합의 원소 제거하는 법 (0) | 2021.10.07 |
댓글