5-1 집합
수학에서의 집합과 유사
빈집합은 set),{} 중괄호를 이용해서 요소값 입력함
리스트와 마찬가지로 값의 모임이지만 순서가 없음
중복되지 않고 저장됨
합집합 union 또는 | : 두개의 집합에 들어있는 모든 원소
교집합 intersection 또는 & : 두개의 집합에 공통으로 들어있는 원소
차집합 difference 또는 - : 두개의 집합중 하나의 집합에만 들어있는 원소
<실행 결과>
{1, 2, 3, 6}
{2, 3}
{1}
{1, 2, 3, 6}
{2, 3}
{1}
집합은 중복되지 않으며 순서가 없음
따라서 여러번 프린트 할때 순서가 뒤바뀌어서 나옴
집합값으로 리스트 할당은 불가
- 집합에서 사용하는 함수
in / not in 세트 안에 값이 있는지 여부를 확인(True, False)
add() 세트안에 값을 하나만 추가
update() 세트안에 값을 여러 개 추가, 이때 리스트 형태로 추가함
discard() 세트 안에 있는 항목 삭제, 없는 항목 삭제해도 에러 발생 X
remove() 세트 안에 있는 항목 삭제, 없는 항목 삭제시 에러 발생
cleaer() 세트 안에 있는 값 삭제
del() 세트 자체를 삭제
- 예시) set 함수를 이용한 단어수 세기 프로그램
5-2 딕셔너리 dictionary
딕셔너리 : 키와 값이 쌍으로 구성되어 있는 자료구조
dict()생성자로 정의하거나 혹은 직접 사전을 생성
중괄호()로 표현, 키와 값은 콜론(;)으로 구분하고 요소는 콤마(,)로 구분함
키(key) 세트처럼 중복된 값을 가질 수 없고, 튜플처럼 변경이 불가능
리스트를 키로 사용할 수 없음 튜플은 가능
값(value) 키에 대한 값을 수정,삭제 가능
리스트, 튜플, 세트 등을 값으로 사용 가능
- 딕셔너리 특징
값 조회시 순차적으로 지정하지 않기 때문에 검색 속도 빠름
index 지원하지 않으며, 없는 키를 사용하면 에러 발생
key값은 중복될 수 없고 마지막 key값이 저장됨
in / not in 딕셔너리 안에 키가 있는지 여부를 확인(True, False)
새로운 항목을 추가하려면 새로운 키와 값을 할당해야함
<실행 결과>
{1: 'melon', 2: 'bana', 3: 'carr'}
{1: 'app', 2: 'bana', 3: 'carr'}
{1: 'app', 2: 'bana', 3: 'carr', 4: '열공'}
True
False
- 딕셔너리의 함수
items() 딕셔너리에서 key-value를 리스트형태로 한 쌍으로 가져오는 것
keys() 딕셔너리에서 리스트형태로 key값만 가져오는 것
values() 딕셔너리에서 리스트형태로 value값만 가져오는 것
get(a) 딕셔너리에서 key(a)로 값을 확인
pop() 해당값을 추출하고 딕셔너리에서 삭제, 리스트와 비슷하나 키 값이 필요함
cleasr() 딕셔너리 안의 전체 값을 삭제
del A[key] 딕셔너리의 key를 삭제
del A 딕셔너리 A를 삭제
sorted(A) 키로 정렬
sorted(A.keys()) 키로 정렬
sorted(A.values()) 값으로 정렬
딕셔너리 예제) 메뉴에 따라 가격을 출력후, 가격을 변경하는 프로그램
<실행 결과>
메뉴를 입력하세요
김치찌개 가격을 입력하세요7000
메뉴를 입력하세요불고기
가격을 입력하세요9000
메뉴와 가격입니다 {'김치찌개': 7000, '불고기': 9000}
변경하고자 하는 메뉴를 입력하세요불고기
가격을 입력하세요5000
불고기 의 가격이 5000 원으로 변경되었습니다
'공부 > 【Python】' 카테고리의 다른 글
【파이썬프로그래밍】 6주차-제어문과 연산자 (0) | 2024.05.09 |
---|---|
【파이썬프로그래밍】 3주차-변수와 기본연산자 (0) | 2024.05.08 |
【파이썬프로그래밍】 4주차-리스트와 튜플 (0) | 2024.05.08 |
【파이썬프로그래밍】 2주차-표준입출력 (0) | 2024.05.07 |
【Python】 파이썬과 데이터마이닝-목차 (0) | 2024.05.06 |