티스토리 뷰
[파이썬] 딕셔너리
딕셔너리는 쌍 2개가 하나로 묶인 자료구조다.
apple:'사과' 처럼 의미있는 두 값을 연결해서 구성한다.
딕셔너리는 여러 정보를 하나의 변수를 표현할 때 사용된다.
예를 들면 다음과 같은 정보가 있다고 가정하자.
키 |
값 |
학번 |
1000 |
이름 |
홍길동 |
학과 |
컴퓨터공학과 |
1. 딕셔너리의 생성
딕셔너리는
딕셔너리변수 = {키1:값1, 키2:값2, 키3:값3, ...}
다음과 같이 구성한다. Key와 Value의 쌍으로 구성되어 있다.
주의할 점은 딕셔너리는 순서가 없다는 것이다.
생성한 순서대로 딕셔너리가 구성되어 있지 않다.
앞서 예를 든 정보를 딕셔너리로 표현하면 다음과 같다.
student = {'학번':1000, '이름':'홍길동', '학과':'컴퓨터공학과'}
print(student)
출력결과 :
{'학번': 1000, '이름': '홍길동', '학과': '컴퓨터공학과'}
2. 딕셔너리 추가
student['연락처'] = '010-1234-1234'
3. 딕셔너리 삭제
딕셔너리의 쌍을 삭제하려면 del(딕셔너리명[키]) 형식으로 삭제한다.
student = {'학번':1000, '이름':'홍길동', '학과':'컴퓨터공학과'}{'학번': 1000, '이름': '홍길동', '학과': '컴퓨터공학과'}
print(student)
student['연락처'] = '010-1234-1234'
del(student['학과'])
print(student)
{'학번': 1000, '이름': '홍길동', '연락처': '010-1234-1234'}
4. 딕셔너리 사용
딕셔너리를 사용하려면 키를 이용해 값을 구한다.
student['학번']
student.get('학번')
두 코드의 결과값은 모두 '홍길동'이다.
하지만 위에 코드를 사용할 경우, 없는 키를 호출한다면 에러가 발생한다.
get 함수를 사용하면 아무것도 반환하지 않는다.
없는 키에 접근할 경우 아래 코드를 사용하는 것이 바람직하다.
# 딕셔너리의 모든 키 반환
student.keys()
# 딕셔너리의 모든 키를 튜플 형태로 구할 경우
student.items()
# 딕셔너리의 모든 값을 리스트로 반환하는 함수
student.values()
# 딕셔너리 안에 해당 키 존재여부를 확인할 경우
'키 이름' in 딕셔너리명
5. 딕셔너리 정렬
딕셔너리 안에는 순서가 없다. 키를 사용해 값을 추출하기 때문에 순서의 필요성이 없기 때문이다.
하지만 필요에 따라 딕셔너리를 정렬해야 할 때도 있다.
딕셔너리를 정렬하는 방법은 다음 코드와 같다.
하지만 sorted 함수를 사용할 경우 결과가 튜플로 변경되어 리스트의 형태로 출력된다.
fruit_dic = {'사과':2000, '배':3000, '딸기':1000}
fruit_list = []
print(fruit_dic)
fruit_list = sorted(fruit_dic.items(), key=lambda x: x[1])
print(fruit_list)
출력결과
{'사과': 2000, '배': 3000, '딸기': 1000}
[('딸기', 1000), ('사과', 2000), ('배', 3000)]
'프로그래밍' 카테고리의 다른 글
[파이썬] 연습문제. 1 (0) | 2018.08.10 |
---|---|
[안드로이드 스튜디오] Failed to find style 'coordinatorLayoutStyle' in current theme (0) | 2018.08.03 |
[Android] 안드로이드 네이버 검색 API 연동하기 (2) | 2018.07.27 |
[파이썬] 문자열 구성 파악 (0) | 2018.07.26 |
[JAVA] 별찍기 예제(직각삼각형, 피라미드형) (0) | 2018.07.26 |
- Total
- Today
- Yesterday
- JavaFX
- world wide web
- outer join
- 글자수세기프로그램
- 아우터조인이란
- 오라클 null값 집계함수
- 웹이란
- 별찍기예제
- 오라클 집계함수
- 아우터조인
- 웹
- 딕셔너리
- WWW
- 오라클 null값
- 파이썬기초
- 파이썬
- 파이썬 딕셔너리
- Python dictionary
- 자바글자수세기
- 자바
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |