튜플 정렬
sort()
함수 이용하여 아이템 정렬sorted()
: 튜플로 정렬가능, 리스트 자료형 반환 딕셔너리
key
와 value
을 이용해서 자료 관리{ }
를 이용해서 선언, 키:값
형태로 아이템 정의 get
은 key
가 없어도 에러가 발생하지 않음딕셔너리 추가
[key]:value
형태로 아이템 추가 Q. 하루에 몸무게(kg)와 신장(m)이 각각-0.3kg, +0.001m씩 변한 다고 할 때, 30일 후의 몸무게와 신장 값 저장 후 BMI 값 출력
myBodyInfo = {'이름':'gildong', '몸무게':83.0, '신장':1.8}
myBMI = myBodyInfo['몸무게'] / (myBodyInfo['신장'] ** 2)
print(f'myBodyInfo: {myBodyInfo}')
print(f'myBMI: {round(myBMI, 2)}')
date = 0
while True:
date += 1
myBodyInfo['몸무게'] = round((myBodyInfo['몸무게'] -0.3), 2)
print('몸무게': {}'.format(myBodyInfo['몸무게']))
myBodyInfo['신장'] = round((myBodyInfo['신장'] +0.001), 3)
print('신장': {}'.format(myBodyInfo['신장']))
myBMI = myBodyInfo['몸무게'] / myBodyInfo['신장'] **2)
if date >= 30:
break
print(f'myBodyInfo: {myBodyInfo}')
print(f'myBMI: {round(myBMI, 2)}')
Q. 학생의 시험점수가 60점 미만이면 F(재시험)으로 값을 변경하는 코드를 key()를 이용
scores = {'kor':88, 'eng':55, 'mat':85, 'sci':57, 'his':82}
print(f'scores: {scores})
minScore = 60
fStr = 'F(재시험)'
fDic = {}
for key in scores:
if scores[key] < minScore:
scores[key] = fStr
fDic[key] = fStr
print(f'scores: {scores}')
print(f'fDic: {fDic}')
딕셔너리 삭제
del
과 key를 이용하여 item 삭제pop()
와 key를 이용하여 item 삭제Q. 딕셔너리에 저장된 점수 중 최저, 최고 삭제
socres = {'s1':8.9, 's2':8.1, 's3':8.5, 's4':9.8, 's5':8.8}
minScore = 10; minScoreKey = ''
maxScore = 0; maxScoreKey = ''
for key in scores.keys():
if scores[key] < minScore:
minScore = scores[key]
minScoreKey = key
if scores[key] > maxScore:
maxScore = score[key]
maxScoreKey = key
del scores[minScoreKey]
del scores[maxScoreKey]
print('scores: {}'.format(scores))
딕셔너리 유용한 기능
in, not in
: 키(key)의 존재 유무 판단(True/False)len()
: 딕셔너리 길이(아이템 개수)clear()
: 모든 아이템 삭제