반복 가능객체(iterable)
반복가능객체란 말 그대로 반복할 수 있는 객체, 값을 차례데로 꺼낼 수 있는 객체이다.
즉, 요소가 여러 개 들어있고, 한 번에 하나씩 꺼낼 수 있다.
우리가 흔히 사용하는 문자열, 리스트, 딕셔너리, 세트가 반복 가능한 객체.
여러개의 값을 한번에 저장하는 방법들인 리스트, 튜플, 세트, 딕셔너리 특징에 대해서 알아보자.
리스트
반복가능한객체로 쓸 수 있는 객체중에 리스트는 순서가 있으며, 중복된 값을 저장할 수 있고, 수정이 가능(mutable)
int, float, str = 4개의 값을 순서데로 쓰고 타입을 확인하면 리스트가 되는걸 확인할 수 있다. 그럼 a에 값이 들어간걸 확인.
변수에 리스트를 저장해도 이 안에 값을 응용할줄 알아야하니 연산자를 활용해보자.
1-1. 요소 조회
[ ] 인덱스연산자를 활용한다.
숫자를 셀때 1, 2, 3, 4, 5 이렇게 세지만 컴퓨터는 0, 1, 2, 3, 4, 5로 인식을 하기 때문에 10이 아니라, 1.5가 출력된다.
반대로 [-1]을 활용했을 때는 뒤에서부터 ['apple', 'apple', 1.5, 10] 순서로 되니 10이 출력됨.
1-2. 0번째에는 [ 1 ]이 들어가있고, 1에는 [ '돼지' ], 2에는 [ 1.5, 'apple' ], 3에는[ 10 ]이 들어가 있는걸 명심.
그럼 a[1.5, 'apple']
2. 인덱스 슬라이싱
이것도 마찬가지 [ ]안에 넣어서 a[1:3] 1부터2까지 조회를 해준다.
여기에 a[1:3][1]을 쓴다면 [1.5, 'apple'] 1.5가 0이고, 'apple'가 1이니 apple이 출력
3. 비어있는 리스트 (요소가 0개인) 만들기, 여기에 리스트 함수를 쓸 수 있다.
4. 리스트 안에 요소 수정하기 scores[1] = 100 수정하고 싶은 요소를 지정하고[1], [1]째 방에 = 100을 넣어 대입 해준다.
(대입 연산자 앞에 쓰였으니 저장된 공간으로 알고있자!! 대입연산자 앞에 없으면 저장되어 있는 값)
*리스트 함수와 메소드*
리스트 메소드를 배우면서 알고 넘어가기.
리스트 메소드
- list.append(요소) : 리스트 마지막에 요소를 추가한다.
요소가 0개 있는 리스트에 a.append('김주희')를 a라는 변수에 저장하면 ['김주희']라고 출력이 되서 나오고
여기에 ['김주희']라고 저장된 변수에 한번 더 추가를 하니 ['김주희', '김주희'] 두개의 요소가 저장되어 ['김주희', '김주희']가 출력.
- list.insert(인덱스, 요소)
먼저 저장된 ['김주희', '김주희', '김주희', '김주희', '김주희'] 값에 a.insert(2, '안녕')을 하면 2번째 방에 '안녕'을 추가하는 것이니
['김주희', '안녕', '김주희', '김주희', '김주희', '김주희']로 출력
- list.remove()
지우고 싶은 요소를 a.remove( '안녕') 에 넣어서 출력하면 삭제하는기능을 활용할 수 있다.
같은 요소인 '김주희'를 삭제하면 앞에서 부터 차례데로 삭제가되니 맨안 요소만 삭제가 되어 출력된다.
- list.pop( ) 기본적인 기능은 마지막 문자열만
끝에 '김주희'라는 문자열값만 없어진다.
리스트(반복가능객체) 연산
['안녕 ' + '반가워'] #['안녕 반가워']
[1, 5, 7] + [4, 6, 8] #[1, 5, 7, 4, 6, 8]
#문자열과 비슷하게 연산자를 써서 활용하자
#알아두기
a = [1, 2, 3, 4, 5]
a.count(10) #요소의 개수 찾기, 10을 찾아주세요 했을때 - 0출력
a.index(2) #2가 몇번째에 있는지 알려주는 함수 - 1출력
a.reverse() #역순으로 정렬해주는 함수 - [5, 4, 3, 2, 1]
a.sort() #오름차 순으로 정렬해주는 함수 - [1, 2, 3, 4, 5]
**다시 복습**
del 변수, index, sort(reverse = True), sorted, extend 다시 공부하기
[Python-기초] 반복가능 객체(iterable) -딕셔너리 (0) | 2023.02.25 |
---|---|
[Python-기초] 반복가능 객체(iterable) -튜플 (0) | 2023.02.25 |
[Python-기초] 조건문 - if ~ elit ~ else (0) | 2023.02.24 |
[Python-기초] 조건문 - if~else (0) | 2023.02.23 |
[Python-기초] 조건문 - if문 (0) | 2023.02.23 |
댓글 영역