본문 바로가기

카테고리 없음

파이썬 문법정리2 ⚡️ 튜플, 딕셔너리

1️⃣ 튜플

: 튜플은 항목의 값을 삭제하거나 변경하는 것이 불가능하다.

 

➰튜플 생성하기

>>> t1 = ()
>>> t2 = (1,)  #요소가 한 개 일때는 콤마를 붙여줘야함
				#안 붙일 경우 int형이 됨
>>> t3 = (1, 2, 3)
>>> t4 = 1, 2, 3
>>> t5 = ('a', 'b', ('ab', 'cd'))

 

➰ 튜플 인덱싱, 슬라이싱 (리스트와 동일)

>>> t = 1, 2, 3, 4, 5, 6, 7
>>> t[1:3]
(2, 3)
>>> t[:4]
(1, 2, 3, 4)
>>> t[-1]
7

 

➰ 튜플 연산

>>> t = 1, 2, 3
>>> tt = 4, 5, 6

>>> t * 3
(1, 2, 3, 1, 2, 3, 1, 2, 3)

>>> t + tt 
(1, 2, 3, 4, 5, 6)

>>> len(t)
3

 

2️⃣  딕셔너리

: 딕셔너리의 요소는 key:value 쌍으로 이루어짐, key는 고유한 값으로 중복되면 안됨

 

➰딕셔너리 생성

>>> dic = {'name':'jiyoon', 'phone':'01033334444', 'birth':'0101'}
>>> dic2 = {'house':['gangnam','gangbuk','jeju']}
>>> dic2 = {'house':('gangnam','gangbuk','jeju')}
#value에는 리스트, 튜플도 넣을 수 있다. key에는 불가능

➰ 딕셔너리 추가, 삭제

>>> jiyooni = {'name':'jiyoon', 'blog':['tistory','naver']}
>>> jiyooni['blog']
['tistory', 'naver']
>>> jiyooni['name']
'jiyoon'

➰ 딕셔너리의 키,밸류 사용하기

#파이썬 2.7까지는 dict_keys가 아닌 list를 반환
#파이썬 3.0이후부터 dict_keys를 반환
#dict_keys는 기본적인 iterate 구문에 사용가능
>>> jiyooni.keys()
dict_keys(['name', 'blog'])

#리스트로 반환받고 싶으면 아래처럼
>>> list(jiyooni.keys())
['name', 'blog']

>>> jiyooni.values()
dict_values(['jiyoon', ['tistory', 'naver']])

#각 키밸류쌍을 튜플로 묶어서 반환해준다.
>>> jiyooni.items()
dict_items([('name', 'jiyoon'), ('blog', ['tistory', 'naver'])])

#딕셔너리 안의 값들 전부 삭제
>>> jiyooni.clear()
>>> jiyooni
{}

➰딕셔너리 key로 value 가져오기

get과 인덱싱의 차이는 존재하지 않는 키를 접근할 때 get은 None을 반환하지만 인덱싱의 경우 에러를 출력한다.

>>> dic = {1:5, 2:6, 3:7, 4:8}
>>> dic.get(1)
5
>>> dic.get(5)
>>> dic[5]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 5

#키가 없을 경우 정해진 디폴트 값을 리턴하고 싶을 때
>>> dic.get(5, 0)
0