반응형
7. 리스트, 튜플, 딕셔너리, 집합
# 리스트
[1,2,3,4,5]
# 결과 [1,2,3,4,5]
a = list([1,2,3,4,5])
a
# 결과 [1,2,3,4,5]
리스트 구조를 만드는 방법은 2가지이다.
1. []
2. list()
리스트는 문자, 숫자 자료를 넣을 수 있다. 또한 혼합할 수도 있다.
또한, 하나의 값만으로 만들 수 있다는 특징이 있다.
# 튜플
c=list((1,2,3,4,5))
c
# 결과 : [1,2,3,4,5]
튜플은 수정할 수 없다는 특징이 있다.
리스트의 인덱싱
# 리스트 인덱싱
list1 = [1,2,3, ['a', 'b', 'c']]
list1[0]
# 결과 : 1
list1[3]
# 결과 : ['a', 'b', 'c']
list[3][1]
# 결과 : 'b'
리스트를 다른 리스트에 포함시킬 수 있다.
인덱싱은 항상 첫 번째가 0번임을 명심하자.
리스트의 슬라이싱
# 리스트의 슬라이싱
list2 = [1,2,3,4,5]
list2[0:3]
# 결과 : [1, 2, 3]
# 슬라이싱의 마지막 번호는 제외
list3 = [1,2,3,4,5,6,7,8,9]
list[1:6:2]
# 결과 : [2, 4, 6]
# 1:6이므로, [2,3,4,5,6]에서 2개텀으로 선택
리스트의 연산
# 리스트의 연산
list1 + list2
# 결과 : [1,2,3, ['a', 'b', 'c'],1,2,3,4,5]
# 두 리스트를 이어붙인 것과 동일함
list2 * 3
# 결과 : [1,2,3,4,5,1,2,3,4,5,1,2,3,4,5]
# 곱하게 되면 반복하는 효과
리스트 관련 함수
len() : 리스트에 몇 개의 데이터가 있는지 확인
count() : 특정 요소 값 개수 세기
append() : 데이터 삽입
insert() : 데이터 삽입
remove() : 특정 데이터 삭제
clear() : 리스트 데이터 전체 삭제 (변수는 유지, 리스트 안의 데이터만 사라짐)
reverse() : 역순
sort() : 정렬
# 리스트 함수 예제
list3 = [1,2,3,4,5]
len(list3)
# 결과 : 5
list3.count(1)
# 결과 : 2
list4 = list3.append(1)
list4
# 결과 : [1,2,3,4,5,1]
# 맨 끝에 데이터 추가
list5 = list3.insert(3,88)
list5
# 결과 : [1,2,3,88,4,5,1]
# 인덱스가 3인 곳에 88을 삽입
list6 = list3.remove(1)
list6
# 결과 : [2,3,4,5]
# 1이라는 데이터를 삭제, 같은 데이터가 여러개이면 인덱스 번호가 낮은 것 먼저 삭제
list7 = list3.clear()
list7
# 결과 : []
# list7 이라는 리스트는 있지만, 안에 데이터가 모두 사라짐
list8 = list3.sort()
list8 = list3.(reverse=Fale)
# 결과 : [1.2.3.4.5]
# 두 결과가 동일, 오름차순으로 정리, default가 오름차순
list9 = list3.(reverse=True)
# 결과 : [5,4,3,2,1]
# 내림차순으로 정리
튜플의 연산
튜플은 데이터 수정이 불가능하다.
다만, 더하고 곱해서 새로운 튜플을 만드는 것은 가능함.
# 튜플 예제
tp1 = (1, 'a')
tp2 = (3,4)
tp1 + tp2
# 결과 : (1,'a',3,4)
tp2 * 3
# 결과 : (3,4,3,4,3,4)
딕셔너리
Key 값과 value 값이 쌍을 이루게 됨
# 딕셔너리 구제조
score = {'math' : 90, 'english' : 85}
score
# 결과 : {'math' : 90, 'english' : 85}
score['math']
# 결과 : 90
# key값을 이용해 value값을 소환
score.keys()
# 결과 : dict_keys(['math', 'english'])
# key값들을 전부 나타내줌
score.values()
# 결과 : dict_value([90, 85])
score['math'] = 70
score
# 결과 : {'math' : 70, 'english' : 85}
# value값 수정이 가능함.
집합
집합을 만드는 방법은 2가지
1. set() 함수 이용
2. {}을 이용
# 집합
# 집합을 만드는 2가지 방법
set([1,2,3,])
# 결과 : {1,2,3,}
{'apple'}
# 결과 : {'apple'}
집합은 중복을 허용하지 않음.
{1,2,3,1}
# 결과 : {1,2,3}
# 집합은 중복을 허용하지 않음
A와 B의 교집합, 합집합, 차집합
교집합
A.intersection(B)
A&B
s1 = set([1,2,3,4])
s2 = set([1,2,5,6])
# 교집합
s1.intersection(s2)
# 결과 : {1, 2}
s1 & s2
# 결과 : {1, 2}
합집합
A.union(B)
A|B
# 합집합
s1.union(s2)
# 결과 : {1, 2, 3, 4, 5, 6}
s1 | s2
# 결과 : {1, 2, 3, 4, 5, 6}
차집합
A.difference(B)
A-B
# 차집합
s1.difference(s2)
# 결과 : {3, 4}
s1 - s2
# 결과 : {3, 4}
Ref
렛유인 - 파이썬 데이터 분석 - 기초이론
렛유인 - 파이썬 데이터 분석 - 전처리&시각화
728x90
'공부 > Python' 카테고리의 다른 글
[Python 기초] 반복문 (while, for) (0) | 2024.08.23 |
---|---|
[Python 기초] 조건문 (If, if-else, if-elif-else) (0) | 2024.08.22 |
[Python 기초] 문자열 포매팅, 삼항연산자 (2) | 2024.08.11 |
[Python 기초] 데이터 유형, 데이터 유형 변경 (0) | 2024.08.10 |
[Python 기초] 경로 설정, Jupyter lab 실행 (0) | 2024.08.09 |