-
자료형에 따른 활용법(함수 등) - 리스트파이썬 2020. 7. 1. 02:52
1. 리스트를 만드는 법
[ ]를 이용한다. 각 요소는 쉼표( , )를 이용하여 구분해준다. 리스트는 자신의 순서값을 가질 수 있으며, 어떤 형태든 저장이 가능하다.
2. 리스트 인덱싱과 슬라이싱
리스트도 문자열과 같이 인덱싱과 슬라이싱이 가능하다. 문자열의 경우 인덱싱을 실시할 경우 리스트의 첫 번째 값은 인덱싱 넘버 0부터 시작한다. 예를 들어 a=[5,4,3,2,1,]일 경우 a에서 5는 a[0]의 값을 갖는다.
슬라이싱의 경우 처음부터 끝까지 표현할 수도 있고 중간부터 잘라서 표현할 수 있다. 예를 들어 a=[5,4,3,2,1]일때 a[1:3]은 4,3를 가리키며, a[:2]는 5,4를 a[2:]는 3,2,1을 의미한다.
※ 슬라이싱 주의 사
슬라이싱을 할 땐 숫자를 인덱스 형식으로 세어준다. 예를 들면 다음과 같다.
>>> a = [1,2,3,4,5] >>> a[0] = 1 >>> a[1] = 2 >>> a[2] = 3 >>> a[3] = 4 >>> a[4] = 5
하지만 슬라이싱을 할 때는 슬라이싱의 뒤에 오는 숫자에서 -1을 한 인덱스넘버가 해당 결과값의 마지막에 온다. 예를 들면 다음과 같다.
>>> a = [2,3,4,5,6] >>> a[0:3] 2,3,4 #슬라이싱해준 최종 숫자에서 -1을 한 인덱스 넘버가 결과값의 끝에 온다. #즉 a[0:3]은 인덱스 넘버 0,1,2를 결과값으로 나왔다. >>> a[0:4] #슬라이싱 a[0:4]다. 하지만 결과값은 여기서 -1을하고 이것을 인덱스에 반영한다. 2,3,4,5 #인덱스 넘버 0,1,2,3 값인 2,3,4,5가 결과값으로 나왔다. >>> a[0:5] #슬라이싱 a[0:5]다. 하지만 결과값은 여기서 -1을 하고 이것을 인덱스에 반영한다. 1,2,3,4,5 #인덱스 넘버 0,1,2,3 값인 2,3,4,5가 결과값으로 나왔다.
3. 리스트의 연산
리스트를 더해주거나 곱해줄 땐 그냥 일반적인 더하기 곱하기 방식을 사용하면 된다. 다만 리스트 내 문자열을 숫자와 합치려고하면 오류가 나기 때문에 그럴 때는 숫자를 문자열로 바꾸어 문자열과 합해주면 된다.
4. 리스트 관련 함수
리스트 갯수 구하기 : len(x)
리스트 내 요소들의 갯수를 세어준다.
>>> a = [1,2,3,4,5] >>> len(a) 5
리스트에 포함된 요소 세기 : x.count( y )
리스트 안에 해당 숫자가 몇 개가 있는지 세어준다.
>>> a = [1,2,3,3,4,5] >>> a.count(3) 2 >>> a = [1,2,3,3,4,5] >>> a.count(5) 1
리스트의 위치 반환 : x.index( y )
변수가 되는 리스트 내에서 y에 맞는 인덱스 넘버를 돌려준다.
>>> a = [1,2,3,4,5] >>> a.index(4) 3 >>> a = [3,4,5,6,7] >>> a.index(7) 4
리스트 마지막에 요소 값 추가 : x.append( y )
리스트의 마지막 부분에 값을 추가해준다.
* 리스트에는 정수값(int)를 추가하는 것이 기본이지만 리스트의 추가도 가능하다.
>>> a = [1,2,3] >>> a.append(4) [1,2,3,4] >>> a = [1,2,3] >>> a.append([4, 5]) [1,2,3, [4, 5]]
리스트의 원하는 위치에 요소 값 추가 : x.insert( y, z )
append와 달리 리스트 내에서 원하는 위치에 요소 값을 추가해준다.
* y는 원하는 위치, z는 넣고자 하는 요소
>>> a = [1,2,4,5] >>> a.insert(2, 3) [1,2,3,4,5]
리스트에 리스트 추가하기 : x.extend( y )
리스트에 대량으로 리스트를 추가할 수 있다.
* extend 함수에서 y자리에는 리스트만 추가가 가능하다.
>> a = [1,2,3,4,5] >>> a.extend([6,7]) [1,2,3,4,5,6,7]
리스트 요소 값 순서대로 정렬하기 : x.sort( )
리스트 내의 요소값을 순서대로 정렬해준다.
>>> a = [3,1,4,2,5] >>> a.sort() [1,2,3,4,5]
리스트 요소 값 역으로 정렬하기 : x.reverse( )
* reverse함수는 요소값을 별도로 순서대로 정리해서 역순으로 뒤집는게 아니라 현재 상태에서 역순으로 뒤집는 것이다.
>>> a = ['c', 'a', 'b'] >>> a.reverse() ['b', 'a', 'c']
리스트 요소 제거 : x.remove( y )
리스트 내에서 삭제하길 원하는 숫자를 입력하면 삭제해준다.
* 리스트 내에 같은 숫자가 여러개가 있을 경우 리스트 내 첫 번째 나오는 숫자를 삭제한다.
>>> a = [1,2,3,1,2,3] >>> a.remove(3) [1,2,1,2,3]
리스트 요소 값 삭제하기 : del x [ y ]
* del은 remove와 다르게 삭제하고 싶은 값을 지정하는게 아니다.
* 삭제하고자 하는 값의 인덱스 위치를 입력하면 해당 인덱스 위치의 숫자가 삭제된다.
>>> a = [1,2,3,4,5] >>> del a[0] [2,3,4,5] >>> a = [1,2,3,4,5] >>> del a[2:] [1,2]
리스트 요소 끄집어 내기 : x.pop( y )
* x.pop()는 해당 리스트의 마지막 요소를 꺼내서 출력 후 리스트 내에서 삭제한다.
>>> a = [1,2,3,4,5] >>> a.pop() 5 >>> a [1,2,3,4]
* x.pop(y)는 해당 리스트에서 y위치에 있는 요소를 꺼내서 출력 후 삭제한다.
* y위치는 인덱스 넘버로 입력해줘야 한다.
>>> a = [1,2,3,4,5] >>> a.pop(3) 4 >>> a [1,2,3,5]
리스트 요소 끄집어 내기 : enumerate ( x )
* enumerate는 읽어내는 리스트, 튜플 등 요소를 인덱스 값과 그 요소를 돌려준다.
>>> color = ["red", "green", "blue"] >>> for i, value in enumerate(color): ... print(i, ":", value) ... 0 : red 1 : greend 2 : blue
'파이썬' 카테고리의 다른 글
자료형에 따른 활용법(함수 등) - 딕셔너리 (0) 2020.07.01 자료형에 따른 활용법(함수 등) - 튜플 (0) 2020.07.01 자료형에 따른 활용법(함수 등) - 문자열 (0) 2020.06.30 파이썬 자료형 (0) 2020.06.30 파이썬 - 변수, 상수, 리터럴 (0) 2020.06.30