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