파이썬에서는 리스트의 일부분을 따로 copy 할 수 있습니다. 이것을 slicing 이라고 합니다. 문자열 에서도 사용이 가능 합니다.
우선 bts라는 list하나를 선언을 했습니다.
이제 여기서 bts 의 2번째 요소 부터 4번째 요소만 따로 copy해서 sub_bts 라는 list를 만들고자 한다면 다음 처럼 할 수 있습니다.
slcing할 객체가 start부터 end까지 포함할 간격을 뜻합니다. 기본값은 1입니다.
다음 처럼 step을 2로 지정해서 선언해보겠습니다.
위에 처럼 step을 2로 선언하면 sub_bts 의 값은
Step을 2로 했으니
sub_bts = ['제이홉', '정국']
이렇게 나오게 됩니다.
Slicing 에서 기억해야 할 것이 하나 있습니다. 그건, slicing은 오리지널 list를 수정하는게 아니라, 새로운 list를 만들어 낸다는 것입니다. 오해가 있을 수 있는 부분이니 기억하시길 바랍니다.
del 키워드는 list에서 원하는 요소를 삭제할수 있게 해준다. 하지만 요소가 리스트에서 삭제되면 파이썬이 자동으로 리스트의 인덱스들을 다시 정렬해서 인덱스 번호가 중간에 비어있지 않도록 하게 해줍니다.
del 키워드를 사용해서 요소를 리스트에서 삭제하는 방법의 단점은 인덱스를 사용해야 한다는 것입니다.
가끔은 인덱스를 사용하기 싫을때도 있고 또 인덱스를 사용하기 불편할때가 있습니다.
그럴때는 다음 처럼 remove 를 사용하면 됩니다.
또한 remove는 리스트에서 첫 번째로 나오는 삭제하는 요소를 삭제하는 함수이다.
위와 같이 a가 3이라는 값을 2개 가지고 있을 경우 첫 번째 3만 제거되는 것을 알 수 있다.
만약 그 다음 중복되는 값도 삭제하고싶으면 remove(3)을 한 번 더 실행하면 다시 3이 삭제된다.