본문 바로가기
지속가능티끌/Python

Python. 딕셔너리.

by 리치굿맨 2020. 7. 5.

 

 

딕셔너리 생성하기.

- 딕셔너리 변수 생성할 때부터 키와 값을 정의하면서 만들수도 있고, 빈 딕셔너리 만들어도 됨. 

 

# 딕셔너리 생성하면서 키, 값 지정. 

my_dict = {'a': 1, 'b': 2, 'c': 3}


# 빈 딕셔너리 생성. 
# 아래 2가지 모두 동일한 결과.
my_dict = {}
my_dict = dict() 

#dict() 로 값대입하면서 딕셔너리 생성하기. 
#아래 2개모두 동일 결과.
my_dict =  dict(a=1, b=2, c=3) 
my_dict = dict({'a': 1, 'b': 2, 'c': 3})

 

 

 

 

 

get() .  키에 해당하는 값 받기.

my_dict['a'] 처럼 키의 값을 받는 방법도 가능하고 get 함수 이용하여 받는것도 가능.  

my_dict = {'a': 1, 'b': 2, 'c': 3}
my_dict.get('a') # 키 a 의 값 1 반환됨. 
my_dict.get('a',0) # 2번째 인자에 0을 기록하면 키없다면 0 반환됨. 
my_dict.get('d',0) # 키 d 가 없기에 0 반환됨.

 

 

 

keys(), values(), items() . 모든 키 , 값, 키-값 반환. 

my_dict = {'a': 1, 'b': 2, 'c': 3}; 
print(my_dict.keys());  # 출력결과 : dict_keys(['a','b','c'])   모든키
print(my_dict.values()); # 출력결과 :dict_values([1,2,3])  모든 값. 
print(my_dict.items()); # 출력결과 : dict_items([('a',1),('b',2),('c',3)]) 모든 키-값 

 

딕셔너리 루프 

for key in my_dict.keys():
    print(key)

for value in my_dict.values():
    print(value)
    
for key, value in my_dict.items():
    print('key : {}, value : {} '.format(key, value))


 

 

 

 

딕셔너리의 value 에는 리스트나 딕셔너리도 대입가능. 

아래 코드는 딕셔너리 dic_1 의 키 'a' 의 value 로 dic_2 를 대입한것. 

## dictionary 의 value 에 dictionary 형 대입. 

dic_1 = {'a':1,'b':2}
print(dic_1) # 출력결과 {'a':1,'b':2}

dic_2 = {'x':5,'y':6,'z':7} 
print(dic_2) # 출력결과 {'x':5,'y':6,'z':7} 

dic_1['a'] = dic_2 # dic_1 의 키 'a' 에 dic_2 대입 
print(dic_1['a']) # 출력결과 {'x':5,'y':6,'z':7} 
print(dic_1['a']['x'])  # 출력결과 5.



## dic_1 의 value 루프. 
for each_value in dic_1.values():
    print(each_value)
#루프결과
{'x':5,'y':6,'z':7} 
2

 

 

 

딕셔너리 정렬 방법. 

 

Python. sorted. 크기 순 정렬 . 딕셔너리 정렬 등

sorted 이용 딕셔너리 정렬 - sorted 반환값은 리스트. - 딕셔너리 에 적용한 경우 sorted 반환형은 리스트이면서 리스트 각 요소는 튜플 타입. import operator my_dic = {'a': 20, 'b': 40, 'c': 30, 'd': 50,'e..

igotit.tistory.com

 

 

 

연관 

 

 

C++. std::map . 키-값 컬렉션

/// 선언 std::map<int, std::string=""> my_map_i_str; /// 요소추가 예. 키=3, 값 igotit my_map_i_str[3] = std::string("igotit"); /// 요소추가 my_map_i_str.insert(make_pair(3,igotit)); /// 요소제거 my_map..</int,>

igotit.tistory.com

 

 

 

MFC CMap Class. 등 자료형 자유로운 딕셔너리(사전) 컬렉션.

CMap CMap은 자료형이 자유로운 딕셔너리 컬렉션 클래스. CMap Class A dictionary collection class that maps unique keys to values. 복사 template< class KEY, class ARG_KEY, class VALUE, class ARG_VALUE..

igotit.tistory.com

 

 


첫 등록 : 2020.03.17

최종 수정 : 2021.09.09

단축 주소 : https://igotit.tistory.com/2487

 


 

댓글1

  • 안녕하세요? 2020.10.19 20:02

    딕셔너리 루프 두번째 줄에 오타가 있는 것 같습니다
    ley->key
    답글


   
현물 |선물 인버스 |선물 USDT     현물 | 선물 USDT |봇제작툴/카피트레이딩     현물 |선물 인버스 |선물 USDT     선물 인버스 |선물 USDT