파이썬(Python) 딕셔너리(dictionary) 관련 함수,메소드 정리
-목차-
1. 딕셔너리 생성하기
2. 딕셔너리 key : value 쌍 수정하기
3. 딕셔너리 key : value 쌍 추가하기
4. 딕셔너리 key : value 쌍 제거하기
5. 원하는 value값 key값을 이용하여 출력하기 (+get)
6. 모든 key값 리스트화시켜서 출력하기, key값이 딕셔너리 안에 있는지 확인
7. 모든 value값 리스트화시켜서 출력하기, value값이 딕셔너리 안에 있는지 확인
8. 모든 key : value 쌍 리스트화시켜서 출력하기
9. key : value 쌍 모두 지우기
10. popitem() , pop()
11. 복사하기 copy()
12. 특정 key값들에게 값 할당하기 fromkeys()
13. setdefault()
- 딕셔너리 생성하기
딕셔너리는 기본적으로 key-value값을 쌍으로 넣어준다. 또한 빈 리스트를 만들듯이 빈 딕셔너리 또한 만들 수 있다.
dic1 = {}
print(dic1)
>>> {}
dic2 = {'hi':'hello'}
print(dic2)
>>> {'hi':'hello'}
+) key값에 리스트를 넣을 수는 없다. 단, value값에는 얼마든지 가능하다.
2. 딕셔너리 key : value 쌍 수정하기
dic1 = {'name' : '홍길동', 'email' : 'animoto1@naver.com','from' : 'korea'}
dic1['name'] = '김태윤'
print(dic1)
>>> {'name': '김태윤', 'email': 'animoto1@naver.com', 'from': 'korea'}
원래 key값 value값을 위와 같이 수정할 수 있다.
3. 딕셔너리 key : value 쌍 추가하기
dic1 = {'name' : '홍길동', 'email' : 'animoto1@naver.com','from' : 'korea'}
dic1['phonenumber'] = 01013212312
print(dic1)
>>> {'name': '홍길동', 'email': 'animoto1@naver.com', 'from': 'korea', 'phonenumber': '01013212312'}
dic[입력하고자하는 key값] = 입력하고자하는 value값을 통해 key : value 쌍을 추가할 수 있다.
4. 딕셔너리 key : value 쌍 제거하기
dic1 = {'name' : '홍길동', 'email' : 'animoto1@naver.com','from' : 'korea'}
del dic1['email']
print(dic1)
>>> {'name': '홍길동', 'from': 'korea'}
dic1[삭제하고자 하는 key : value 쌍의 key값] 을 통해 key : value 쌍을 제거할 수 있다.
5. 원하는 value값 key값을 이용하여 출력하기
dic1 = {'name' : '홍길동', 'email' : 'animoto1@naver.com','from' : 'korea'}
print(dic1['name'])
print(dic1.get('name'))
>>>홍길동
>>>홍길동
dic[출력하고자하는 vaule값의 key값] 혹은 dic.get(출력하고자하는 value값의 key값)을 통해 원하는 value값을 key값을 이용하여 출력할 수 있다.
6. 모든 key값 리스트화시켜서 출력하기, key값이 딕셔너리 안에 있는지 확인
dic1 = {'name' : '홍길동', 'email' : 'animoto1@naver.com','from' : 'korea'}
dic1_keys = list(dic1.keys())
print(dic1_keys)
>>> ['name', 'email', 'from']
print('name' in dic1_keys)
>>> True
dic1.keys()를 통해 dict_keys(['name', 'email', 'from'])와 같이 key만 모을 수 있고 이를 리스트화시킬 수 있다.
in 함수를 이용해 key값이 딕셔너리에 있는지 확인가능하다.
7. 모든 value값 리스트화시켜서 출력하기, value값이 딕셔너리 안에 있는지 확인
dic1 = {'name' : '홍길동', 'email' : 'animoto1@naver.com','from' : 'korea'}
dic1_values = list(dic1.values())
print(dic1_values)
>>> ['홍길동', 'animoto1@naver.com', 'korea']
print('홍길동' in dic1_values)
>>> True
dic1.values를 이용해 dict_values(['홍길동', 'animoto1@naver.com', 'korea'])와 같이 value만 모을 수 있고 이를 리스트화시킬 수 있다.
in 함수를 이용해 value값이 딕셔너리에 있는지 확인가능하다.
8. 모든 key : value 쌍 리스트화시켜서 출력하기
dic1 = {'name' : '홍길동', 'email' : 'animoto1@naver.com','from' : 'korea'}
dic1_items = list(dic1.items())
print(dic1_items)
>>> [('name', '홍길동'), ('email', 'animoto1@naver.com'), ('from', 'korea')]
dic1.items를 이용해 dict_items([('name', '홍길동'), ('email', 'animoto1@naver.com'), ('from', 'korea')])와 같이 key : value 쌍을 모을 수 있고 이를 리스트화시킬 수 있다.
9. key : value 쌍 모두 지우기
dic1 = {'name' : '홍길동', 'email' : 'animoto1@naver.com','from' : 'korea'}
dic1.clear()
print(dic1)
clear함수를 통해 딕셔너리를 초기화시킬 수 있다.
10. popitem() , pop()
dic1 = {'name' : '홍길동', 'email' : 'animoto1@naver.com','from' : 'korea'}
pi = dic1.popitem()
print(pi)
>>> ('from', 'korea')
dic1.pop('name')
print(dic1)
>>> {'email': 'animoto1@naver.com'}
popitem() 함수를 통해 마지막으로 추가한 딕셔너리 요소를 pop할 수 있고, pop(key값)을 통해 key-value 쌍을 pop할 수 있다.
11. 복사하기 copy()
dic1 = {'name' : '홍길동', 'email' : 'animoto1@naver.com','from' : 'korea'}
dic2 = dic1.copy()
print(dic2)
copy() 함수를 이용해 딕셔너리를 복사할 수 있다.
12. 특정 key값들에게 값 할당하기 fromkeys()
x = ('key1', 'key2', 'key3')
y = 0
thisdict = dict.fromkeys(x, y)
print(thisdict)
>>>{'key1': 0, 'key2': 0, 'key3': 0}
x = ('key1', 'key2', 'key3')
thisdict = dict.fromkeys(x)
print(thisdict)
>>>{'key1': None, 'key2': None, 'key3': None}
dict.fromkey(key값들,key값들에 공통으로 줄 value값)을 통해 하나의 value값으로 이루어진 딕셔너리를 만들 수 있다.
13. setdefault()
car = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
x = car.setdefault("model", "Bronco")
print(x)
>>>Mustang
car = {
"brand": "Ford",
"model": "Mustang",
"year": 1964
}
x = car.setdefault("color", "white")
print(x)
>>>white
dic.setdefault(key값, value값)에 대해 key값에 대한 value값이 있으면 원래의 value값을 출력하고, 없으면 입력된 value값을 출력한다.
'CS > 파이썬' 카테고리의 다른 글
파이썬(Python) 배열 안의 원소의 곱을 구하는 방법 (0) | 2021.08.13 |
---|---|
파이썬 다중조건으로 정렬하기 (ft.[백준] 10814, 10825 문제) (0) | 2021.07.27 |
파이썬(Python) 시간 초과 해결방법 (1) | 2021.07.19 |
파이썬(Python) 리스트 합집합, 교집합, 차집합, 대칭차 (0) | 2021.07.10 |
파이썬(Python) 소수점 자리 제한하는 방법 (4) | 2021.07.10 |