반응형

파이썬에서 리스트는 값들의 나열로 여러 종류의 값을 담을 수 있고 문자열 처럼 0부터 시작하는 인덱스를 가지고 있어서 슬라이싱도 가능합니다.



[ ] 를 이용해서 리스트를 만듭니다.





append() 메서드를 사용해 기존 리스트에 값을 추가할 수 있습니다. 이 때 값은 리스트의 맨 뒤에 추가됩니다.
insert() 메서드를 사용하면 append()와 다르게 리스트의 원하는 위치에 값을 추가할 수 있습니다. 이 때 인자 값은 리스트의 인덱스입니다.
extend() 메서드로는 튜플이나 리스트 같은 여러 값을 한번에 삽입할 수 있습니다. 이 때도 append() 처럼 맨 뒤에 추가됩니다.




리스트에서는 + 연산자를 지원하는데 이 것을 사용할 때에는 튜플이나 리스트 처럼 반복되는 값을 넣어야 합니다. 만약에 문자열을 넣을 경우에는 문자열의 문자 하나하나가 슬라이싱되서 리스트에 들어가게됩니다.




index() 메서드를 사용해서 특정 값의 인덱스를 찾을 수 있습니다. 이 때 index()는 처음 찾은 값만을 반환 합니다. 만약 리스트의 인덱스 0에 '슬기'가 있고 5에도 '슬기'가 있으면 0만을 반환합니다. 그래서 index()의 두 번째 인자에 시작점을 세 번째 인자에 종료점을 지정해 줄 수있으며 범위 안에 특정 값이 없을 경우 리스트 내에 그 값이 없다는 에러를 출력합니다.




pop() 메서드로 리스트에서 값을 뽑아낼 수 있습니다. 인자가 없을 경우 뒤에서부터 차례로 값을 뽑고, 인자가 있을 경우 해당 위치의 값이 뽑힙니다. 뽑힌다고 표현한 이유는 pop된 값은 리스트에서 없어지기 때문입니다.




count() 메서드는 해당 값이 리스트 안에 몇개 있는지를 반환합니다.




remove() 메서드는 말 그대로 해당 값을 삭제합니다. 동일한 값이 있을 경우에는 앞 쪽의 값을 삭제합니다.




sort() 메서드와 reverse() 메서드로 리스트를 정렬할 수 있습니다. sort()는 순방향, reverse()는 역방향 입니다.
이 두 메서드는 정말 편리한 메서드라느 생각이 드네요 ㅎㅎ




그리고 sort()의 key값을 정해서 자신이 원하는 방식으로 리스트를 정렬할 수 있습니다.
아래는 단어의 마지막 문자를 비교해서 정렬하는 것을 보여주는 코드입니다.
단어의 마지막 문자를 반환하는 함수 sorttest()를 정의하고 sort()메서드의 key로 지정합니다.



단어의 마지막 문자를 기준으로 오름 차순으로 정렬된 것을 볼수 있습니다.

reverse를 True로 하면 역방향도 가능합니다.

 

반응형

+ Recent posts