CODING/Python
[Python] 딕셔너리와 리스트 비교 / Dictionary | List
밍톨맹톨
2022. 7. 30. 19:59
728x90
728x90
리스트는 [ ] 대괄호 안에 값을 넣어주고 인덱스로 값을 접근한다.
딕셔너리는 {} 중괄호 안에 key:value의 형태로 저장한다.
리스트가 값에 접근할 때 인덱스(숫자)로 접근했다면,
딕셔너리는 이름(key)로 접근한다고 생각하면 된다.
ls = [23, 41, 2, 231, 256]
dic = {'name' : '홍길동',
'phone' : '01012341234',
'accept' : True}
print(ls[1]) # 41
print(dic['name']) # 홍길동
딕셔너리는 key로 접근하기 때문에 key가 겹치면 안된다.
예를 들어 아래의 코드를 보면 name이 홍길동과 가나다 두 개가 존재하는데,
이 경우 프린트 해보면 뒤에 있는 가나다로 업데이트 된 것을 볼 수가 있다.
이런 식으로 딕셔너리는 key가 겹칠 경우 뒤의 값으로 업데이트 된다고 생각할 수 있다.
dic1 = {'name' : '홍길동',
'phone' : '01012341234',
'accept' : True,
'name' : '가나다'}
print(dic1)
# {'name': '가나다', 'phone': '01012341234', 'accept': True}
리스트에 값을 추가할 때는 ls.append()라는 함수(메소드)를 사용하는데
딕셔너리는 dic1[key값] = value값 이런 식으로 추가하면 된다.
리스트에서 값을 삭제할 때는 ls.remove() 괄호 안에 삭제를 원하는 값을 삭제하면 되는데,
딕셔너리는 del dic1[key값]을 사용해서 삭제하면 된다.
# 딕셔너리에 추가
dic1['age'] = 13
print(dic1)
# 딕셔너리에서 삭제
del dic1['accept']
# key들만 접근
print(dic1.keys())
# dict_keys(['name', 'phone', 'accept'])
# ver1. key로 모든 값 출력
for k in dic1.keys():
print(dic1[k])
# 가나다
# 01012341234
# True
728x90