Cherry Cloud 9

[혼공 학습단 5기] 혼공파 3주차 기본 미션 / 선택 미션 본문

Programming/Python (혼공파)

[혼공 학습단 5기] 혼공파 3주차 기본 미션 / 선택 미션

체리구름 2021. 2. 14. 19:44
728x90
반응형

[3주차] 범위 : 4장

 

[기본 미션]

리스트, 딕셔너리, 범위 자료형에 대해 이해한 내용을 바탕으로 포스팅하기

 

[리스트]

여러가지 자료를 저장할 수 있는 자료형Index를 기반으로 값을 저장

 

 

 Element 와 Index

리스트와 Index 특징

1) 리스트의 인덱스를 음수로 카운팅하면 뒤에서부터 element를 선택할 수 있다. 

2) 리스트 접근 연산자를 이중으로 사용할 수 있다. 

3) 리스트 안에 리스트를 사용할 수 있다.

 

* 리스트 길이를 넘는 Index element에 접근 할 경우 IndexError 발생

 

리스트 연산자

연결 : +

반복 : * 

element 갯수 : len()

 

리스트에 element 추가

append(element) : 리스트 뒤에 element 추가

insert(index, element) : 리스트 중간에 element 추가

extend(list) : 리스트 뒤에 새로운 리스트의 element들을 추가

 

* 연결 연산자와 extend의 차이

  - 연결 연산자는 연산 결과로만 값 출력, 원본 리스트에 변화 없음. -> 비파괴적

  - extend는 원본 리스트에 새로운 element가 추가됨. -> 파괴적

 

리스트에 element 제거

1) 인덱스로 제거하기

del list[index] : list의 index에 있는 element를 제거 

list.pop(index) : index를 지정하지 않으면 마지막 element를 제거

 

2) 값으로 제거하기

list.remove(value) : 값을 지정해서 제거. 여러개가 있어도 가장 먼저 발견되는 1개만 제거. 만약 중복된 여러 개의 값을 모두 제거하려면 반복문 사용

 

3) 모두 제거하기

list.clear() : 리스트 내부의 element를 모두 제거

 

리스트 내부에 특정 값이 있는지 확인

value in list : 리스트 내부에 특정 값이 있는지 확인. True / False 로 반환

value not in list : 리스트 내부에 특정 값이 없는지 확인

 

for 반복문 사용

for iterator in list:

   code

 

[딕셔너리]

key를 기반으로 값을 저장

Dictionary = {
	key : value,
    key : value,
    ...
    key : value
}

 

딕셔너리에 값 추가 / 제거하기

dictionary[new key] = new value  : 새로운 키와 값을 추가. 이미 존재하는 key를 적을 경우 새로운 값으로 대치됨

del dictionary[key] : 특정 키를 지정하면 해당 element 제거 

 

*존재하지 않는 key 에 접근 할 경우 KeyError 발생

 

딕셔너리 내부에 키가 있는지 확인하기

key in dictionary

dictionary.get(key) : 딕셔너리에 특정 key가 있는지 확인. 없을 경우 KeyError 발생 하지 않고 None 출력 

 

for 반복문 사용

for key in dictionary :

  code

 

[범위]

범위 사용법

1) range(A) : 0 부터 A 까지의 정수로 범위 지정

2) range(A, B) : A 부터 B-1 까지의 정수로 범위 지정

3) range(A, B, C) : A 부터 B-1 까지의 정수로 범위를 지정하는데, 앞 뒤의 숫자가 C 만큼의 차이를 가짐

>>> list(range(0,10,2))

[0, 2, 4, 6, 8]

>>> list(range(0,10,3))
[0, 3, 6, 9]

 

[선택 미션] 157쪽의 1번 문제의 답 쓰고 인증샷

list_a = [0,1,2,3,4,5,6,7]

list_a.extend(list_a)
print(list_a)
[0, 1, 2, 3, 4, 5, 6, 7, 0, 1, 2, 3, 4, 5, 6, 7]

 

list_a = [0,1,2,3,4,5,6,7]

list_a.append(10)
print(list_a)
[0, 1, 2, 3, 4, 5, 6, 7, 10]

 

list_a = [0,1,2,3,4,5,6,7]

list_a.insert(3,0)
print(list_a)
[0, 1, 2, 0, 3, 4, 5, 6, 7]

 

list_a = [0,1,2,3,4,5,6,7]

list_a.remove(3)
print(list_a)
[0, 1, 2, 4, 5, 6, 7]

 

list_a = [0,1,2,3,4,5,6,7]

list_a.pop(3)
print(list_a)
[0, 1, 2, 4, 5, 6, 7]

 

list_a = [0,1,2,3,4,5,6,7]

list_a.clear()
print(list_a)
[]
728x90
반응형