2021. 6. 30. 10:12ㆍ공부한 내용/점프 투 파이썬
(모르는 것만 정리해놓음)
5. 딕셔너리 자료형
1) 딕셔너리 쌍 추가, 삭제하기
(1) 딕셔너리 쌍 추가
a = {1: 'a'}
a[2] = 'b'
a
#> {1: 'a', 2: 'b'}
(2) 딕셔너리 요소 삭제
del a[1] #key가 1인 key:value 쌍 삭제
a
#> {2: 'b'}
(3) 딕셔너리에서 key 이용해 value 얻기
-리스트나 튜플, 문자열은 요소값 접근 시 인덱싱이나 슬라이싱 기법을 사용
-딕셔너리는 key를 이용해 value에 접근
grade = {'pey':10, 'julliet': 99}
grade['pey'] #key가 'pey'인 딕셔너리의 value를 반환
#> 10
2) 딕셔너리 관련 함수
(1) key()
-key만을 모아서 dict_keys 객체 반환
-리스트처럼 사용할 수 있지만, 리스트 관련 함수(append, insert, pop 등)는 사용 불가
-인덱스로 접근 불가
a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
a.keys()
#> dict_keys(['name', 'phone', 'birth'])
(2) values()
-value만을 모아서 dict_values 객체 반환
-인덱스로 접근 불가
a.values()
#> dict_values(['pey', '0119993323', '1118'])
(3) items()
-key와 value의 쌍을 튜플로 묶은 값을 모아서 dict_items 객체 반환
-인덱스로 접근 불가
a.items()
#> dict_items([('name', 'pey'), ('phone', '0119993323'), ('birth', '1118')])
(4) clear()
-딕셔너리 내의 모든 요소 삭제
-빈 딕셔너리는 {}로 표현
a.clear()
a
#> {}
(5) in
-key가 딕셔너리 안에 있는지 조사
-key가 딕셔너리 안에 존재하면 True, 존재하지 않으면 False 반환
a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
'name' in a
#> True
'email' in a
#> False
(6) get()
-key에 대응되는 value 반환
-존재하지 않는 키 사용 시 None 반환 : 오류를 발생시키는 list와 차이가 있음
-key 값이 없을 경우 디폴트 값을 대신 반환하도록 지정 가능
a = {'name': 'pey', 'phone': '0119993323', 'birth': '1118'}
a.get('name')
#> 'pey'
print(a.get('nokey'))
#> None
a.get('foo', 'bar') #(찾을 값, 해당 값이 key에 없을 때 반환할 디폴트 값)
#> 'bar'
6. 집합 자료형
1) 집합의 특징
-중복을 허용하지 않음
-순서가 없음: 인덱싱 사용 불가(딕셔너리와 유사)
(+) 인덱싱 사용을 원할 경우 리스트나 튜플로 변환 필요 (list(), tuplt() 함수 사용)
2) 교집합, 합집합, 차집합 구하기
(1) 교집합
-'&' 기호나 intersection() 함수 사용
s1 = set([1, 2, 3, 4, 5, 6])
s1 = set([1, 2, 3, 4, 5, 6])
s1 & s2
#> {4, 5, 6}
s1.intersection(s2)
#> {4, 5, 6}
(2) 합집합
-'|' 기호나 union() 함수 사용
s1 | s2
#> {1, 2, 3, 4, 5, 6, 7, 8, 9}
s1.union(s2)
#> {1, 2, 3, 4, 5, 6, 7, 8, 9}
(3) 차집합
-'-' 기호나 'difference() 함수 사용
s1 - s2
#> {1, 2, 3}
s1.difference(s2)
#> {1, 2, 3}
s2 - s1
#> {8, 9, 7}
s2.difference(s1)
#> {8, 9, 7}
3) 집합 관련 함수
(1) add()
-이미 만들어진 set 자료형에 값 하나 추가
s1 = set([1, 2, 3])
s1.add(4)
s1
#> {1, 2, 3, 4}
(2) update()
-여러 개의 값을 한꺼번에 추가
s1 = set([1, 2, 3])
s1.update([4, 5, 6])
s1
#> {1, 2, 3, 4, 5, 6}
(3) remove()
-특정 값을 제거
s1 = set([1, 2, 3])
s1.remove(2)
s1
#> {1, 3}
7. 불 자료형
1) 자료형의 참과 거짓
*문자열
-'python': 참
-"": 거짓
*리스트
-[1, 2, 3]: 참
-[]: 거짓
*튜플
-(): 거짓
*딕셔너리
-{}: 거짓
*숫자형
-0이 아닌 숫자: 참
-0: 거짓
*None: 거짓
2) 불 연산
*bool() 함수
-자료형의 참/거짓을 식별하는 내장 함수
bool('python')
#> True
bool('')
#> False
'공부한 내용 > 점프 투 파이썬' 카테고리의 다른 글
[파이썬] 점프 투 파이썬 - 모듈과 패키지 (0) | 2023.06.15 |
---|---|
[파이썬] 점프 투 파이썬 - 클래스 (0) | 2021.07.04 |
[파이썬] 점프 투 파이썬 - 함수, 파일 입출력 (0) | 2021.07.01 |
[파이썬] 점프 투 파이썬 - 제어문(if문, while문, for문) (0) | 2021.06.30 |
[파이썬] 점프 투 파이썬 - 자료형(숫자, 문자열, 리스트, 튜플) (0) | 2021.06.29 |