728x90
반응형
딕셔너리
하나의 키에 하나의 값이 쌍을 이루어 저장되는 자료형을 말한다 .
쌍으로 이루어진 데이터를 관리 할 때, 다양한 속성을 가진 데이터를 관리 하기위해서 주로 사용된다.
(주의!)
- 중복된 키를 사용할 수 없다.(하나를 제외한 나머지 키 값은 무시함)
- key는 숫자, 문자열, 값은 숫자, 문자열 리스트가 될 수 있다.
- 딕셔너리를 정의 할 때, 원소들의 묶음은 중괄호 { }로 감싸 주어야함
- 인덱싱 접근이 불가능하다.
딕셔너리 함수
- keys :딕셔너리에 포함된 모든 key만을 반환
- values :딕셔너리에 포함된 모든 value만을 반환
- in :해당 key가 딕셔너리 안에 포함되어 있는지 검사
- update : 두 개의 딕셔너리를 하나로 합침 clear 딕셔너리의 모든 요소를 제거
- clear : 딕셔너리의 모든 요소를 제거
딕셔너리 실습 개념
#딕셔너리 선언
num=
print(num)
#딕셔너리에 키와 값을 추가
num[4] = "four" #유사코드 _ word[a] = b
print(num)
#딕셔너리에서 키를 이용하여 값을 검색
print(num[2])
#중복이 불가능, 원래있던 값이 사라진다.
num[1] ="하나"
print(num)
#딕셔너리에서 키를 삭제
del num[3]
print(num)
(실습1)입력받은 숫자의 각 작업의 기능을 추가하기
word= {} # { } : 빈딕셔너리
print("<영어 단어장>\n 1. 단어 추가\n 2.단어 검색\n 3.단어 삭제\n 4.단어 목록 출력\n 5. 종료\n")
print(" ==========================================")
num = int(input("작업을 선택>>"))
while 1 :
if num == 1 :
add = input("추가할 영어 단어를 입력하세요 >>" )
r = input("의미를 입력하세요 >>")
word[add] = r
print(word)
elif num ==2 :
serch = input(print("검색을 원하는 단어를 입력하세요 >>"))
if serch in word :
print(word[serch])
else :
print("검색 결과가 없습니다.")
elif num == 3 :
d = input(print("삭제를 원하는 단어를 입력하세요 >>"))
if d in word :
del word[d]
print("{}를 삭제 하였습니다.".format(d))
else :
print("해당 단어가 존재하지 않습니다.")
elif num ==4 :
print(word)
elif num ==5 :
break
else:
print("없는 숫자입니다. 다시 입력하세요.")
num = int(input("작업을 선택>>"))
(실습 2)숫자를 입력받아 해당 숫자가 홀수 인지 짝수인지 판단하고 개수와 합을 출력하시오
tlist= []
slist =[]
clist = []
word = {}
for i in range(5):
n = int(input("숫자를 입력하세요 >>"))
tlist.append(n)
for j in tlist:
if j%2 == 0 :
slist.append(j)
word[j] = "짝수"
else :
clist.append(j)
word[j] = "홀수"
print("<실행결과>\n")
print("숫자리스트 :",tlist)
print("짝수 개수:",len(slist))
print("짝수 합:",sum(slist))
print(word)
(실습 3)숫자를 입력받아 선택한 작업을 수행하도록 만들기
for i in items: #딕셔너리에 있는 키 값이 i 변수에 저장된다. 딕셔너리에서는 키가 우선권을 가진다.
print(i, items[i])
print(i, items.get(i) #item[i]와 유사, 키에 해당하는 값을 불러옴
#딕셔너리는 값보다 키가 우선 권을 가진다.
items= {'coffe':100,'water':50,'milk':150,'bread':5}
print("<물품 관리>\n")
print(" 1.물품 추가\n 2.물품 구매\n 3.물품 재고 확인\n 4. 종료\n")
print("=======================================================")
print(items)
while 1 :
num =int(input("작업 선택 >>"))
if num ==1 :
plus = input("추가할 물품을 입력하세요 : ")
plusV =int(input("구입할 물품의 갯수을 입력하세요 : "))
if plus in items :
items[plus] += plusV
elif num ==2:
add = input("구매를 원하는 물품을 입력하세요 : ")
if add in items:
v = int(input("구매 수량을 입력하세요 : "))
if items[add] < v:
print("재고가 부족합니다.")
else :
items[add] -= v
if items[add] < 1 :
del items[add]
else:
print("없는 물품 입니다.")
elif num ==3:
print(items)
elif num ==4:
break
else :
print("없는 작업입니다. 다시 선택하세요.")
728x90
반응형
'PROGRAMING📚 > Python📑' 카테고리의 다른 글
파이썬(Phython) 문자열 검사 /변환 / 공백 제거 함수 (0) | 2022.04.14 |
---|---|
파이썬(Python) 함수 정의와 활용 결과값 출력하기 (0) | 2022.04.14 |
파이썬(Python) matplotlib 이용한 그래프 그리기 (0) | 2022.04.14 |
파이썬(Python) 리스트를 이용한 삽입, 삭제 응용하기 (0) | 2022.04.14 |
파이썬(Python) 홀수와 짝수의 갯수와 각 리스트의 합 구하기 (0) | 2022.04.14 |
댓글