[Python] 연습

[Python] 기초 문법 4

Simon Yoon 2022. 1. 7. 02:09

사전(Dictionary)

# 빈 사전
D = {}

# 다양한 자료형의 사용
D = {'Name':'James', 'Age':23, 'Friends':['John', 'Bob']}
# 다만, key에는 리스트, 딕셔너리를 포함할 수 없다.

# key-value 추가
D['Hobby'] = 'Programming'

# key-value 삭제
del D['Age']

 

Key를 사용하여 값을 가져오기

# 인덱싱, 슬라이싱의 방법으로 요소 값을 접근할 수 없다
# 딕셔너리에서는 value를 얻기 위해서는 오로지 key를 통해서만 접근이 가능

D['Name']
# 'James'

 

사전 관련 함수

- 사전의 모든 key값들 보기 keys()

D.keys()

 

- 사전의 모든 value들 보기 values()

D.values()

 

- 사전의 모든 key, value 쌍 보기 items()

D.items()

 

- 사전의 원소 가져오기 get()

D.get('Name')

# 없는 key를 불러오면, 불러올 값 세팅
D.get('Phone', '01012345678')

 

- in과 not in의 사용

in과 not in은 해당 딕셔너리에 찾고자 하는 키(key)가 존재하는지를 판단하여 True나 False로 반환

print('Name' in D)
# True
print('Age' not in D)
# False

 

- sorted() 함수를 이용한 정렬하기

1. key를 올림차순으로 정렬

D = {'Name':'James', 'Age':23, 'Friends':['John', 'Bob']}
sorted(D)

# ['Age', 'Friends', 'Name']

내림차순은 sorted(D, reverse = True)라는 옵션을 사용한다.

 

2. items()를 이용한 정렬

D = {'James':23, 'Mina':32, 'Fred':44}
dict(sorted(D.items(), key=lambda x: x[1], reverse=True))

실행화면

 

D.items() 를 활용하면 {'key' : value} 형태를 [(key, value)] 형태로 key, value 쌍을 확인할 수 있다. 여기에서 sorted를 활용하고 lambda식으로 x[1]의 value값으로 정렬할수도 있다.

참고로 정렬 후에는 리스트 형식으로 새로운 변수에 저장할 수 있는데, list를 dictionary로 바꿔주려면 dict()를 위의 코드 에시처럼 작성하면 된다.

 

*딕셔너리 정렬에 대해서 참고할 만한 블로그 (링크)

 

앞서 잠시 살펴지만,  a_list = [('key1' : 'value1', ('key2' : 'value2')]  처럼 리스트 형태 안에 튜플로 키:값이 있다면,  dict(a_list)  를 사용해서 딕셔너리로 만들 수도 있습니다.

 

- 모든 요소 삭제 clear()

D.clear()
# 모든 요소가 삭제되어도 빈 딕셔너리로 딕셔너리 형태를 유지하게 됨

 

'[Python] 연습' 카테고리의 다른 글

[Python] 기초 문법 6  (0) 2022.01.08
[Python] 기초 문법 5  (0) 2022.01.07
[Python] 기초 문법 3  (0) 2022.01.07
[Python] 기초 문법 2  (0) 2022.01.07
[Python] 기초 문법 1  (0) 2021.12.31