본문 바로가기

컴퓨터 과학 & 영상처리 관련/Python

리스트의 일반 연산, 중첩리스트

리스트의 일반연산



중첩 리스트
-리스트 안의 또 다른 리스트


 
리스트의 메소드들
append - 자료를 리스트의 끝에 추가(혹은 스택의 push)
insert - 자료를 지정된 위치에 삽입
index - 요소 검색(search)
count - 요소 개수 알아내기
sort - 리스트 정렬
reverse - 자료 순서 바꾸기
remove - 지정 자료 값 한 개 삭제
pop - 리스트의 마지막 값을 읽어내고 삭제(스택의 pop)
extend - 리스트를 추가



>>> cmp
<built-in function cmp>
>>> cmp(1,2) #2개의 데이타를 인수로 받는 함수
-1
>>> #뒤에 꺼가 크면 -1
>>> cmp(1,1) #같으면 0
0
>>> cmp(2,1) #앞에꺼가 크면 1
1
>>> L.sort() #숫자가 문자보다 앞에 와있다
>>> L
[1, 2, 3, 5, '4', 'ham', 'spam'] 





그 다음에 설명할 함수는 reverse()
 리스트 안에 들어있는 목록의 순서를 완전히 바꾼다
 


remove() 지정된 값을 삭제(값으로 삭제)
 


pop() 맨 끝에서 데이타를 꺼내고 리스트에서 하나 빠짐


extend()는 리스트를 한꺼번에 추가 가능 append()랑 비슷
 


리스트를 스택으로 쓰기
append(s), pop()  - 맨 끝에 추가하고 맨 끝부터 꺼내고


리스트를 큐로 쓰기
append(s), pop(0) - 맨 끝에 추가하고 맨 처음부터 꺼내고
 


  리스트 반복 참조 (리스트 안에 튜플이 있을때 반복 참조?)


파이썬에서 %s는 머냐? 스트링인가? int도 그렇게 처리되나...
포매팅을 이용한 출력도 되고 맨 밑의 for name, num은 튜플을 언패킹해서 바로 처리했다함(마지막꺼가 제일 명확하다함)


원하는 순서대로 정렬하기 (리스트를 이용한 sorting 기법)
cmp(a,b) 내장 함수

사용자 정의 비교 함수를 이용한 정렬