-
파이썬 기초8. 딕셔너리, 집합마케팅/파이썬 2023. 6. 1. 17:55
1.딕셔너리(dictionary)
-딕셔너리란 키(key)와 값(value) 쌍으로 구성된 자료의 묶음, 인덱스 대신 키값으로 접근 가능
-인덱스와 달리 특별한 키(key)값을 이용하여 자료에 접근, 키값과 관련된값(value)가 짝을 이루고 있음
이를 'key-value pair'라고 함
-딕셔너리는 중괄호({})룰 이용하여 요소를 감싸고, 키 다음 콜론(:)을 입력하여 값을 입력
-딕셔너리 이름 뒤에 대괄호를 친 뒤 찾고자하는 키값을 입력하면 그에 대응하는 valule가 나옴
phone_book={'홍길동':'010-1234-5678', '강감찬':'010-11111-2222', '이순신':'010-3333-4444'} phone_book['강감찬']
리스트 : 대괄호([])
딕셔너리:중괄호({})
2.딕셔너리 생성과 추가
빈 딕셔너리를 생성하고 key값과 value값 넣기
phone_book={} phone_book["홍길동"]="010-1234-5678" print(phone_book)
2-1.딕셔너리 생성과 함께 초기화
phone_book={"홍길동":"010-1234-5678"} print(phone_book)
3.딕셔너리 탐색
딕셔너리에서 키를 모르는 경우 keys()를 사용하여 모든 키를 확인할 수 있음
phone_book={"홍길동":"010-1234-5678", "강감찬":"010-1111-2222", "이순신":"010-3333-4444"} print(phone_book.keys())
3-1. 딕셔너리 정리
phone_book={"홍길동":"010-1234-5678", "강감찬":"010-1111-2222", "이순신":"010-3333-4444"} for key in sorted(phone_book.keys()): print(key,phone_book[key])
3-2.딕셔너리에 사용된 모든 값 조회
phone_book={"홍길동":"010-1234-5678", "강감찬":"010-1111-2222", "이순신":"010-3333-4444"} print(phone_book.values())
4.딕셔너리 수정과 삭제- del(), pop()
딕셔너리 수정-> del,pop(),clear() 이용하며 키를 통해 이루어짐
phone_book={"홍길동":"010-1234-5678", "강감찬":"010-1111-2222", "이순신":"010-3333-4444"} phone_book["강감찬"]="010-1234-1234" print(phone_book)
phone_book={"홍길동":"010-1234-5678", "강감찬":"010-1111-2222", "이순신":"010-3333-4444"} del phone_book["홍길동"] print(phone_book) print(phone_book.pop("이순신")) print(phone_book)
4-1.딕셔너리 항목 모두 삭제하기- clear()
phone_book={"홍길동":"010-1234-5678", "강감찬":"010-1111-2222", "이순신":"010-3333-4444"} phone_book.clear() print(phone_book)
문제1)
english_dict={} english_dict["one"]="하나" english_dict["two"]="둘" english_dict["three"]="셋" word=input("단어를 입력하시오:") print(english_dict[word])
문제2) 편의점 재고관리 프로그램
items={"커피":7,"펜":3,"종이컵":10,"우유":5,"콜라":4,"라면":11} print("판매 전 재고:",items) sell=input("판매할 물건을 입력하세요:") if sell in items: items[sell]-=1 else: print("판매 제품이 아닙니다.") print("판매 후 재고",items)
5.딕셔너리와 반복문
많은 양의 정보를 처리하기 위해 딕셔너리 자료형 사용 -> 반복문을 사용하여 비슷한 작업을 처리할 수 있음
phone_book={"홍길동":"010-1234-5678", "강감찬":"010-1111-2222", "이순신":"010-3333-4444"} for i in phone_book.keys(): print(i) for i in phone_book.values(): print(i)
phone_book={"홍길동":"010-1234-5678", "강감찬":"010-1111-2222", "이순신":"010-3333-4444"} for k,v in phone_book.items(): print('{}의 전화번호는 {}입니다.'.format(k,v))
문자열의 format()을 사용하면 문자열 안에서 중괄호 부분 ({}) 순서대로 format()함수 인자값으로 변환됨
6. 집합
자료의 묶음, 집합은 중복된 데이터를 가질 수 없고 순서를 가질 수 없음
6-1. 집합 생성하기 - set()
s=set() s.add(10) s.add(3) print(s)
6-2. 집합 항목 삭제하기 - discard(),remove(),clear()
s=set() s.add(10) s.add(3) s.add(1) s.add(5) s.add(2) s.discard(5) print(s)
문제1) 가위, 바위, 보 게임 만들기
import random def match(c,m): if c==m: return "비겼습니다." elif match_table[c]==m: return "졌습니다." else: return "이겼습니다." rps_dic={1:"가위",2:"바위",3:"보"} match_table={"가위":"보","바위":"가위","보":"바위"} computer=rps_dic[random.randint(1,3)] mine=input("가위,바위,보 입력:") result=match(computer,mine) print(result)
'마케팅 > 파이썬' 카테고리의 다른 글
파이썬 웹 스크래핑_ 날씨 정보 가져오기 (0) 2023.06.09 파이썬 웹 스크레이핑 기초 (0) 2023.06.05 [파이썬 웹 스크래핑] 페이지 주소 가져오기 (0) 2023.06.01 파이썬 기초7. 함수 (1) 2023.05.30 파이썬 기초6. 리스트(list), remove, append, insert, del, sorted, reverse (0) 2023.05.26