[python] 딕셔너리

박민주·2021년 5월 21일
0

파이썬

목록 보기
3/16
  1. 문자열

  2. 리스트

  3. 튜플

  4. 딕셔너리

  5. 딕셔너리(사전) : 키(key)와 밸류(Value)의 쌍으로 이루어진 자료형

a = {'one':1, 'two':2}
a = {}
a = dict()

person = {'name':'amy', 'age':11}
print(person['name']) # amy

person = {1:'amy', 2:'john'}
print(person[1]) # amy
print(person.get(1)) # amy

print(person[3]  # 값이 없으므로 서버 종료되어 그 뒤의 코드실행 X

# 값이 없지만 그 뒤의 코드는 작동
print(person.get(3)) # none 반환
print(person.get(3, "없는 사람")) # none 대신 "없는 사람" 반환
# 딕셔너리 요소는 순서가 없어서, 인덱싱 사용불가
# 딕셔너리의 값을 업데이트하거나, 새로운 자료 넣을 수 있다
person = {'name':'amy', 'age':11}

person['age'] = 55
print(person) # {'name':'amy', 'age':55}

person['hobby'] = 'hiking'
print(person) # {'name':'amy', 'age':11, 'hobby':'hiking'}

# 기존의 'amy'를 'jason'으로 업데이트
person['name'] = 'jason'
print(person) # {'name': 'jason', 'age': 11}

# 딕셔너리 값 삭제
del person['name']
print(person) # {'age': 11}

# 밸류로 아무 자료형이나 넣을 수 있음. 다른 딕셔너리 또한 가능
person = {'name':'amy', 'age':11, 'info':{'phone':'010-123-1234', 'email':'abc@gmail.com'}}
print(person['info']) # {'phone': '010-123-1234', 'email': 'abc@gmail.com'}
print(person['info']['phone']) # 010-123-1234
# 딕셔너리 안에 해당 키의 존재 유무 확인
person = {'name':'amy', 'age':11}

print('name' in person) # True
print('email' in person) # False
print('phone' not in person) # True

# key값만 출력
print(person.keys()) # dict_keys(['name', 'age']) 

# value 값만 출력
print(person.values()) # dict_values(['amy', 11]) 

# key, value 값 출력
print(person.items()) # dict_items([('name', 'amy'), ('age', 11)]) 
# 딕셔너리와 리스트 함께 쓰기
people = [{'name':'amy', 'age':11},{'name':'john', 'age':44}]

print(people[0]['name']) # amy

person = {'name':'hugo', 'age':66}
people.append(person)

print(people) #[{'name': 'amy', 'age': 11}, {'name': 'john', 'age': 44}, {'name': 'hugo', 'age': 66}]
print(people[2]['age']) # 66
profile
개발공부

0개의 댓글