파이썬의 리스트는 다양한 데이터타입을 가진 배열이다. 그렇기에 값을 출력하고 내가 원하는 값을 추출할 수 있다. 반복문과 인덱스를 사용하면 파이썬 리스트 하나하나의 값에 접근하여 값을 추출할 수 있다. 또한, 범위를 지정하면 범위 내의 값을 가져올 수 있다.
리스트 출력
파이썬 리스트에 값을 넣고 출력을 해 보도록 한다.
반복문을 사용하여 개별 값을 하나하나 추출하고 해당 값의 인덱스까지 확인해 본다.
반복문은 for 문을 사용하고 인덱스를 확인하는 것은 List.index() 함수를 사용하면 된다.
vList = ["YG엔터테인먼트", "블랙핑크", "지수", "제니", "로체", "리사"] print("vListStr List :", type(vList), len(vList), vList) for lpVar in vList: print("vList Each :", type(lpVar), vList.index(lpVar), lpVar)블랙핑크 멤버들 이름으로 리스트를 만들고 출력을 해 보았다.
결과를 보면 리스트 개개의 값과 인덱스까지 확인할 수 있다.
인덱스를 이용한 값 추출하기
리스트의 인덱스를 이용하면 지정한 위치의 값을 가져올 수 있다.
위의 코드에서 index() 함수를 사용하여 각각의 값들에 대한 인덱스를 확인할 수 있었다.
파이썬 리스트의 인덱스는 0부터 시작함을 알 수 있다.
임의로 지정한 인덱스의 값을 가져와 보도록 한다.
vValue = vList[0] print("vList index 0 :", type(vValue), vList.index(vValue), vValue) vValue = vList[1] print("vList index 1 :", type(vValue), vList.index(vValue), vValue) vValue = vList[2] print("vList index 2 :", type(vValue), vList.index(vValue), vValue)목록에서 인덱스가 0번째, 1번째, 2번째인 값을 가져오도록 하였다.
결과화면을 보면 예상한 대로 0번째부터 2번째까지 지정한 인덱스대로 값을 출력한 것을 알 수 있고, 파이썬 리스트의 인덱스는 0부터 시작하는 것을 알 수 있다.
범위를 지정하여 출력하기
대괄호를 이용하여 범위를 지정할 수 있다.
엑셀의 범위를 지정하는 문법과 비슷하다.
파이썬 리스트의 범위는 대괄호를 이용하고 시작인덱스와 끝인덱스를 입력해 준다.
하지면 끝인덱스의 값은 포함되지 않는다는 것을 명심하자
시작인덱스는 2이고, 끝인덱스는 5인 경우 대괄호로 표현하면 [ 2 : 5 ] 과 같다.
파이썬 리스트의 인덱스는 0부터 시작한다.
인덱스가 2에 위치한 값은 지수 이다.
인덱스가 5에 위치한 값은 리사 이다.
하지만, 인덱스가 5인 값은 포함되지 않는다.
여기서 알 수 있는 점은 끝인덱스의 값은 포함되지 않는다.
시작위치 끝위치 없을 경우
파이선 리스트에서 범위 지정시 시작위치와 끝위치를 지정하지 않아도 값을 불러올 수 있다.
시작위치를 지정하지 않는다면 처음위치인 인덱스가 0인위치부터 시작하며
끝위치를 지정하지 않는다면 마지막위치인 인덱스가 마지막인 부분까지 자동 지정된다.
vRangeList = vList[:5] print("vList Range :", type(vRangeList), vRangeList) vRangeList = vList[2:] print("vList Range :", type(vRangeList), vRangeList)위의 코드를 보면
첫번째는 시작위치를 지정하지 않았으며, 두번째는 끝위치를 지정하지 않았다.
첫번째의 경우 시작위치는 자동으로 처음위치는 0이 설정되고,
두번째의 경우 마지막위치는 자동으로 리스트의 마지막 인덱스가 설정된다.
결과화면을 보면 알 수 있다.
범위를 지정함에 있어 인덱스의 끝위치를 지정할 경우 끝위치의 값은 포함되지 않는다고 했다.
첫번째의 경우 [ : 5 ] 인 경우 인덱스 0번부터 5번까지지만, 마지막 인덱스값은 포함되지 않기에 로체 까지만 값이 설정된 것을 알 수 있다.
두번째의 경우 [ 2 : ] 인 경우 인덱스 2번부터 마지막까지 인덱스가 설정된다. 지수부터 마지막까지 값이 설정된 것을 알 수 있다.
코인시던스의 기록
파이썬
[#8 파이썬 기초]리스트 항목 일부 추출(slicing), 리스트에 항목 추가, 삭제하는 법
코인시던스 2020. 10. 9. 17:28
1. 리스트 슬라이싱 (List Slicing)
- 문자열의 Slicing 과 동일하게 리스트의 일부분을 추출해 오는 것입니다.
- 리스트(List) 타입의 슬라이싱(Slicing) 결과는 리스트(List) 타입으로 나타나는데요
- : 앞뒤로 시작 인덱스(Index)와 끝 인덱스(Index)를 적어주면 됩니다. 그 사이의 리스트를 가지고 오며, 마지막 인덱스는 포함하지 않습니다. 아래의 예시를 보면 더 이해가 쉬우실거에요. (Index 의 개념은 [#5 파이썬 기초] 를 참고해주세요.)
문자열과 마찬가지로 리스트에도 멤버함수가 굉장히 많은데 많이 사용하는 것 위주로 설명하겠습니다.
※ 멤버 함수란 생성된 리스트 객체에 동작하는 함수로, 향후 클래스의 개념과 함께 하겠습니다.
2. 리스트 추가 / 삭제 / Index 확인
(1) 리스트의 추가
① append 함수, append() : 리스트 끝에 항목을 추가합니다.
② extend 함수, extend() : 리스트를 연장해줍니다.
- append 함수는 리스트 자체가 하나의 항목으로 추가 되지만, extend 함수를 사용하면 항목들을 리스트에 추가할 수 있습니다. 자세한 내용은 아래의 예시를 참조해 주세요.
③ insert 함수, insert() : 리스트에서 원하는 위치에 항목을 추가할 수 있습니다.
- append 함수는 마지막 위치에만 추가할 수 있지만, insert 함수는 원하는 위치에 항목을 추가할 수 있습니다. , 앞에는 Index 를 , 뒤에는 추가하고자 하는 item 을 적어주면 됩니다.
(2) 리스트 삭제
① remove 함수, remove() : 리스트의 항목을 삭제할 수 있습니다.
- shift+tab 을 누르면 함수 사용법을 확인할 수 있는데 아래에 (value, /) 라고 적혀 있는게 보이시죠?
- 지우고자하는 항목을 () 안에 넣어주시면 됩니다.
- 리스트에 동일한 항목이 여러 개 있다면 제일 앞의 것만 삭제합니다.
- 지우고자하는 항목이 없다면 에러가 발생합니다.
② pop 함수, pop() : 원소를 지움과 동시에 지우고자 하는 값을 반환 시켜줍니다.
반환의 개념은 나중에 함수의 개념에 대해 설명하면서 더 자세히 다루겠습니다.
- remove 함수와 다르게 value(값) 으로 지우는 것이 아니라 index 로 항목을 삭제합니다.
- pop 함수는 값을 지우기도 하지만 그 값을 가지고 와서 새로운 변수에 담는 역할도 합니다.