▶리스트
우리가 여러 프로그래밍 언어를 거치면서 경험했던, array형태와 매우 비슷하다. 리스트명 = [요소1, 요소2, 요소3, ...] 과 같은 형태로 정의한다. 전에서 문자열을 슬라이싱한 것과 마찬가지로 리스트 역시 슬라이싱이 가능하다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
# 리스트 슬라이싱
>>> a = [1, 2, 3, 4, 5]
>>> b = a[:2]
>>> c = a[2:]
>>> b
[1, 2]
>>> c
[3, 4, 5]
# 리스트 길이 구하기
>>> a = [1, 2, 3]
>>> len(a)
3
# 리스트 값 수정하기
>>> a = [1, 2, 3]
>>> a[2] = 4
>>> a
[1, 2, 4]
# 리스트 요소 삭제하기
>>> a = [1, 2, 3]
>>> del a[1]
>>> a
[1, 3]
# 리스트에 요소 추가
>>> a = [1, 2, 3]
>>> a.append(4)
>>> a
[1, 2, 3, 4]
# 리스트 정렬(sort)
>>> a = [1, 4, 3, 2]
>>> a.sort()
>>> a
[1, 2, 3, 4]
# 리스트 뒤집기(reverse)
>>> a = ['a', 'c', 'b']
>>> a.reverse()
>>> a
['b', 'c', 'a']
# 리스트에서 특정문자 위치 찾기
>>> a = [1,2,3]
>>> a.index(3)
2
>>> a.index(1)
0
# 리스트 요소 삽입
>>> a = [1, 2, 3]
>>> a.insert(0, 4)
>>> a
[4, 1, 2, 3]
# 리스트 요소 제거
>>> a = [1, 2, 3, 1, 2, 3]
>>> a.remove(3)
>>> a
[1, 2, 1, 2, 3]
# 리스트요소 끄집어 내기
>>> a = [1,2,3]
>>> a.pop()
3
>>> a
[1, 2]
|
cs |
▶ 튜플
리스트와 거의 흡사하며, 리스트와 차이점이라면 소괄호로 둘러싼다는 점과 값의 수정이 불가하다는 점이 있다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# 튜플의 양식
>>> t1 = ()
>>> t2 = (1,)
>>> t3 = (1, 2, 3)
>>> t4 = 1, 2, 3
>>> t5 = ('a', 'b', ('ab', 'cd'))
# 튜플 인덱싱
>>> t1 = (1, 2, 'a', 'b')
>>> t1[0]
1
>>> t1[3]
'b'
# 튜플 슬라이싱
>>> t1 = (1, 2, 'a', 'b')
>>> t1[1:]
(2, 'a', 'b')
# 튜플 길이 구하기
>>> t1 = (1, 2, 'a', 'b')
>>> len(t1)
4
|
cs |
▶ 딕셔너리
key와 value로 이루어져 있으며, 자바스크립트의 객체형식을 떠올리면 이해하기 쉽다. 딕셔너리는 기본적으로 {Key1:Value1, Key2:Value2, Key3:Value3 ..}와 같은 형태를 가지고 있으며, 각 key:value는 쉼표(,)로 구분한다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
# 딕셔너리 추가
>>> a = {1: 'a'}
>>> a[2] = 'b'
>>> a
{1: 'a', 2: 'b'}
# 딕셔너리 삭제
>>> del a[1]
>>> a
{2: 'b', 'name': 'pey', 3: [1, 2, 3]}
# 딕셔너리에서 Key로 Value 호출
>>> grade = {'pey': 10, 'julliet': 99}
>>> grade['pey']
10
>>> grade['julliet']
99
# Key값들만 호출
>>> a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
>>> a.keys()
dict_keys(['name', 'phone', 'birth'])
# Value값들만 호출
>>> a.values()
dict_values(['pey', '0119993323', '1118'])
# Key, Value 둘다 호출(items)
>>> a.items()
dict_items([('name', 'pey'), ('phone', '0119993323'), ('birth', '1118')])
|
cs |
▶ 집합
집합 자료형은 중복이 없으며, 순서가 없다는 특징을 가지고 있다. 순서가 없으니 당연히 인덱싱 기능이 없다. 인덱싱을 쓰고 싶다면, 리스트나 튜플로 변환후 사용해야 한다. 집합 자료형은 a = set([1,2,3]) 과 같이 만들 수 있다. 집합의 성질을 가지니 당연히 교집합(&), 합집합(|), 차집합(-)을 구할 수 있다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
# 집합 정의
>>> s1 = set([1, 2, 3, 4, 5, 6])
>>> s2 = set([4, 5, 6, 7, 8, 9])
# 교집합
>>> s1 & s2
{4, 5, 6}
>>> s1.intersection(s2)
{4, 5, 6}
# 합집합
>>> s1 | s2
{1, 2, 3, 4, 5, 6, 7, 8, 9}
>>> s1.union(s2)
{1, 2, 3, 4, 5, 6, 7, 8, 9}
# 차집합
>>> s1 - s2
{1, 2, 3}
>>> s2 - s1
{8, 9, 7}
>>> s1.difference(s2)
{1, 2, 3}
>>> s2.difference(s1)
{8, 9, 7}
|
cs |
▶ 불
불 자료형은 참 또는 거짓을 나타내는 자료형이다. 다른 자료형에 대해서도 참 거짓을 표현할 수 있는데, 이는 다음과 같다.
값 | Boolean |
"@@" | True |
"" | False |
[@,@,@] | True |
[] | False |
() | False |
{} | False |
1 | True |
0 | False |
None | False |
'Python' 카테고리의 다른 글
[Python] 대용량 데이터 다루기 (0) | 2022.12.20 |
---|---|
[Python] 파이썬 기초 - 함수 (0) | 2022.11.19 |
[Python] 파이썬 기초 - 제어문 (0) | 2022.11.18 |
[Python] 파이썬 기초 - 자료형1 (숫자형, 문자열) (0) | 2022.11.15 |
[Python] 파이썬 기초 연습 (0) | 2022.10.30 |
댓글