해당 시리즈의 모든 내용은 국비지원 부트캠프 '엘리스 AI 7기' 이호준 선생님의 AI 프리트랙 강의를 수강하며 수업 내용을 정리한 것 입니다.
인덱스 i의 원소를 제거한 후 그 원소를 반환해준다.
(괄호 안을 비울 시 마지막 원소를 가리킨다.)
>>> my_list = [1, 2, 3, 4, 5]
>>> print(my_list.pop(0))
1
>>> print(my_list.pop())
5
시퀀스 내부의 자료 d의 개수를 반환한다.
>>> my_seq = [2, 2, 2, 4, 4]
>>> print(my_seq.count(2))
3
c를 기준으로 문자열을 쪼개서 리스트로 반한한다. (괄호를 비울 시 공백 기준)
>>> my_str = "1 2 3 4 5"
>>> print(my_str.split()) # 공백 기준
['1', '2', '3', '4', '5']
>>> element = "Na, Mg, Al, Si"
>>> print(element.split(',')) # 콤마 기준
['Na', 'Mg', 'Al', 'Si']
str을 기준으로 리스트를 합쳐서 문자열로 반환한다. (괄호를 비울 시 공백)
>>> my_list = ['a', 'p', 'p', 'l', 'e']
>>> print(''.join(my_list))
apple
>>> friend = ['Pat', 'Mat']
>>> print('&'.join(friend))
Pat&Mat
# my_list를 [1, 2, 3]으로 만들기
>>> my_list = [1, 2, 2, 3, 3, 3]
>>> var1 = my_list.count(3)
>>> my_list.pop() # 맨 마지막 3제거
>>> my_list.pop() # 맨 마지막 3제거
>>> my_list.pop(1) # 2 제거
>>> print(my_list)
[1, 2, 3]
>>> my_str = "beetea"
>>> print(my_str.split('e'))
['b', ' ', 't', 'a'] # 'e' 와 'e' 사이에는 아무것도 없으므로 공백을 출력한다.
>>> my_list = ["Seeing", "is", "Believing"]
>>> print(" ".join(my_list))
Seeing is Believing
>>> lyrics = "낙엽을,닮은,너의,눈동자를,나는,정말,정말,좋아했었어,가을을,닮은,너의,목소리를,나는,아직,아직,잊지,못했어,같이,걸으면서,들었던,낙엽,소리가,내,귓가에,들려오는,것만,같아,함께,앉아,있던,좁다란,나무,벤치엔,너의,온기가,남아있는,것만,같아,낙엽을,닮은,너의,눈동자를,나는,정말,정말,좋아했었어,가을을,닮은,너의,목소리를,나는,아직,아직,잊지,못했어"
>>> a = lyrics.split(',')
>>> print(a[45])
'좋아했었어'
여러 자료를 담는 자료형이 필요할 때는 대부분 리스트를 이용하지만, 리스트는 값이 바뀔 위험이 있다. 이를 해결하기 위해서는 튜플을 이용하면 된다.
# 리스트의 위험성
>>> my_list = ['l', 'i', 's', 't']
>>> my_list[1] = 'a'
>>> print(my_list)
['l', 'a', 's', 't']
>>> tuple_zero = ()
>>> tuple_one = (1,)
>>> tuple_ = (1, 2, 3, 4, 5)
>>> typle_ = 1, 2, 3, 4, 5
>>> my_tuple = ('t', 'w', 'i', 'c', 'e')
>>> print(my_tuple[1])
'w'
>>> print(my_tuple[2:4]) # 2번쨰, 3번째 인덱스의 자료를 튜플로 출력
('i', 'c')
in
연산자로 튜플 안에 원소를 확인할 수 있다.len()
함수로 튜플의 길이를 확인할 수 있다.>>> my_tuple = ('t', 'w', 'i', 'c', 'e')
>>> print('t' in my_tuple)
True
>>> print(len(my_tuple))
5
+
연산자로 튜플과 튜플을 연결할 수 있다.*
연산자로 튜플을 반복할 수 있다.>>> my_tuple = ('i', 'c', 'e')
>>> print(('e', 'l') + my_tuple)
(e', 'l', 'i', 'c', 'e')
>>> print(my_tuple * 2)
('i', 'c', 'e', 'i', 'c', 'e')
>>> my_tuple = ('t', 'w', 'i', 'c', 'e')
>>> print(my_tuple.append('!')) # 자료 추가 X
Error
>>> print(my_tuple.remove('w')) # 자료 삭제 X
Error
>>> my_tuple[1] = 's' # 자료 변경 X
Error
>>> my_tuple = (1, 2, 3, 4, 5)
>>> var1 = my_tuple[2]
>>> var2 = my_tuple[1:4] # 1번째, 2번째, 3번째 원소 출력
>>> var3 = len(my_tuple)
>>> print(var1, var2, var3)
3 (2, 3, 4) 5
try ~ except
문try:
안의 명령을 실행하다가 오류가 발생하면 except 오류명 :
구문을 실행한다.>>> my_tuple = (1, 2, 3)
>>> try:
#여기에 인덱싱을 이용해서 Tuple의 값을 변경해봅시다.
my_tuple[2] = 5
>>> except TypeError:
print("Tuple은 값을 변경할 수 없습니다.")
Tuple은 값을 변경할 수 없습니다.
>>> try:
#여기에 .append()를 이용해서 Tuple의 값을 추가해봅시다.
my_tuple.append(6)
>>> except AttributeError:
print("Tuple은 값을 추가할 수 없습니다.")
Tuple은 값을 추가할 수 없습니다.
>>> print(my_tuple)
(1, 2, 3)
{key : value}
의 형식 : key를 알면 value를 알 수 있다.>>> dict_zero = {}
>>> person = {'name':'Michael', 'age':10}
: 열쇠처럼 자료를 꺼낼 수 있는 '도구'
: 딕셔너리에서 Key로 꺼낸 '자료'
(1) 딕셔너리에서 자료 꺼내기
>>> person = {'name':'Michael', 'age':10}
>>> print(person['name'])
Michael
>>> print(person['age'])
10
(2) 딕셔너리에서 자료 추가하기
>>> person = {'name':'Michael', 'age':10}
>>> person['hometown'] = 'Seoul'
(3) 딕셔너리의 원소(key + value) 삭제하기 :del
함수 활용
>>> person = {'name':'Michael', 'age':10}
>>> del person['age']
>>> print(person)
{'name':'Michael'}
>>> dates = {[1, 2, 3] : 'Alphabet'} # 리스트 X
Error
>>> dates = {(1, 2, 3) : 'Number'} # 튜플 O
>>> my_dict = {'사과':'apple', '바나나':'banana', '당근':'carrot'}
>>> var1 = my_dict['사과']
>>> del my_dict['당근']
>>> print(my_dict)
{'사과':'apple', '바나나':'banana'}
>>> my_dict['체리'] = 'cherry'
>>> print(my_dict)
{'사과':'apple', '바나나':'banana', '체리':'cherry'}
>>> my_dict = {}
>>> my_dict[1] = "Integer"
>>> my_dict['a'] = "String"
>>> my_dict[(1, 2, 3)] = "Tuple"
>>> try:
#여기에 [1, 2, 3] → "List"의 대응관계를 만들어봅시다.
my_dict[[1, 2, 3]] = "List"
>>> except TypeError:
print("List는 Dictionary의 Key가 될 수 없습니다.")
List는 Dictionary의 Key가 될 수 없습니다.