티스토리 뷰

반응형

딕셔너리(Dictionary)



dic = { key1:value1, key2:value2, ...} 


# key, value 값을 갖는 자료구조 -> 빠른 입력과 출력

# list in R = Python dictionary



# Dictionary 생성

>>> fruits = {'이름':'사과', '가격':2000, '수량':10}

>>> fruits

{'이름': '사과', '가격': 2000, '수량': 10}

>>> type(fruits)

<class 'dict'>



# 새로운 key:value 삽입

>>> fruits['크기'] = '중'

>>> fruits

{'이름': '사과', '가격': 2000, '수량': 10, '크기': '중'}



# 수정 

>>> fruits['크기'] = ['중','소']   # 리스트로도 수정 가능

>>> fruits

{'이름': '사과', '가격': 2000, '수량': 10, '크기': ['중', '소']}



# 삭제

>>> del(fruits['크기'])

>>> fruits

{'이름': '사과', '가격': 2000, '수량': 10}



# 색인

>>> fruits['이름']       

'사과'

>>> fruits['당도']     # 없는 키 호출 시 Error return

KeyError: '당도'


>>> fruits.get('이름')  

'사과'

>>> fruits.get('당도')     # 없는 키 호출 시 공백 return

(공백)



# Key 검색

>>> '이름' in fruits

True

>>> '당도' in fruits

False



# Key 확인

>>> fruits.keys()

dict_keys(['이름', '가격', '수량'])

>>> list(fruits.keys())      # 리스트처럼 출력

['이름', '가격', '수량']



# Value 확인

>>> fruits.values()

dict_values(['사과', 2000, 10])

>>> list(fruits.values())    # 리스트처럼 출력

['사과', 2000, 10]



Dictionary 내용 확인

>>> fruits.items()

dict_items([('이름', '사과'), ('가격', 2000), ('수량', 10)])

>>> list(fruits.items())     # 리스트처럼 출력

[('이름', '사과'), ('가격', 2000), ('수량', 10)]




Q.

l1=['345-4958','334-0948','394-9050','473-3853']

l2=['서울','경기','부산','제주']

area_no={'서울':"02",'경기':"031",'부산':"051" ,'제주':"064"}

phone = []


sol 1) for문 zip 사용

for i,j in zip(l1,l2) :

    phone.append(area_no.get(j) + ')' + i)

print(phone)


sol 2) 기본 for문

for i in range(0,4) :

    phone.append(area_no.get(l2[i]) + ')' + l1[i])

print(phone)


sol 3) lambda식 사용

>>> ff = lambda x, y : area_no.get(y) + ')' + x

>>> list(map(ff, l1, l2))

================ RESTART: D:/Aaron/Q.py ================

['02)345-4958', '031)334-0948', '051)394-9050', '064)473-3853']




반응형

'Python > Process' 카테고리의 다른 글

[Python] Numpy 배열(생성, 색인, 연산 ..)  (0) 2019.02.01
[Python] 모듈(Module), 패키지(package)  (0) 2019.01.29
[Python] 튜플(tuple)  (0) 2019.01.28
[Python] 리스트 메서드 (list method)  (0) 2019.01.25
[Python] 리스트 (list)  (0) 2019.01.25
댓글
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday