리스트를 쓰는 이유?
여러 변수들을 관리하기 힘드니 하나의 서랍장으로 관리하겠다
리스트와 튜플은 거의 똑같다
둘의 차이점은?
리스트는 [대괄호] , 변경가능(추가,삭제,변경)
튜플은 (소괄호) , 변경불가능
a=[1,2,3] //리스트
b=(1,2,3) //튜플
>>> t1=(1,2,'a','b')
>>> del t1[0]
Traceback (innermost last)
File "", line 1 in ? del t1[0]
TypeError: object doesn't support item deltion
튜플은 고정되어 추가,삭제,변경은 안되나 보는 것은 된다
>>> t1=(1,2,'a','b')
>>> print(t1[0])
1
>>> print(t1[3])
'b'
>>> t1 = (1,2,'a','b')
>>> print(t1[1:]
(2,'a','b')
딕셔너리
사전적 의미로 사전을 의미하는 딕셔너리, 단어를 키로하여 어떤 값이 있는 자료구조라고 할 수 있다
딕셔너리 자료형
>>> dic = {'name': 'pey','phone': '0123456789','birth': '1225'
Key와 Value로 이루어져있다
>>> a = {1: 'a'}
>>> a[2] = 'b'
>>> print(a)
{2: 'b', 1: 'a'}
>>> del a[1]
>>> print(a)
{2: 'b'}
>>> grade = {'pey' : 10, 'julliet': 99}
>>> print(grade['pey'])
10
>>> print(grade['julliet'])
99
Key와 Value가 겹치면 안된다 Value는 같아도 되나 Key는 중복되면 안된다
>>> a = {1:'a', 1:'b'}
>>> print(a)
{1: 'b'} // 마지막 key와 value가 남는다
딕셔너리는 Key가 핵심
>>> a = {'name': 'pey', 'phone': '0123456789', 'birth':'1225'}
>>> print(a.keys)
dict_keys(['name','phone','birth'])
>>> print(a.values())
dict_values(['pey','0123456789','1225'])
Key와 Value 전체를 새로운 배열안에 튜플 형태로 각각(key,value) 쌍을 담을 수 있다
>>> print(a.items())
dict_items([(name,'pey'),(phone,'0123456789'),(birth,'1225')])
이것들은 주로 for문에 자주 쓰인다
>>> a.clear()
>>> print(a)
{}
대괄호 안에 넣은거랑 똑같이 쓸 수 있는데 없는 것을 다룰 때 유용하게 쓸 수 있다
>>> a = {'name':'pey', 'phone':'0123456789','birth':'1225'}
>>> print(a.get('name'))
pey
>>> print(a.get('phone'))
0123456789
>>> print(a[4])
Key Error: 4 // 대괄호를 했을 때
>>> print(a.get(4))
None // get을 썼을 때
>>> print(a.get(4,'없음') )
없음 // default값 4라는 key가 없을 때 '없음'을 return
딕셔너리의 핵심은 Key를 이용해서 빠르게 찾을 수 있다.
>>> a = {'name':'pey', 'phone':'0123456789','birth':'1225'}
>>> print('name' in a)
True
>>> print('email in a)
False