2009년 11월 19일 목요일

Python 3 - 자료구조(리스트)

리스트

 

리스트는 대괄호([])를 사용하여 자료구조를 생성한다.

리스트에 참여하는 멤버는 ,를 구별자로 하여 저장한다.

Ex) colors=['red', 'green', 'gold']

 

개별값 가져오기 (슬라이싱)

  결과가 colors[1]과 같이 리스트내의 단일 원소를 명시적으로 지정한 경우는 해당 자료형

      type(colors[1])            // colors[1]의 결과는 'green'

  그렇지 않을 경우의 결과값은 리스트

      type(colors[1:2])         // colors[1:2]의 결과는 ['green']

Ex)

colors[0]     // ['red']

colors[1:2]   // ['green']

colors[-1]    // ['gold']

colors[:2]     // ['red', 'green']

 

 

리스트에 원소 추가하기

 

append(값)

  리스트의 맨 뒤에 새로운 원소를 추가한다.

  colors.append('blue')

  colors.append('blue', 'yellow')

  colors.append(['blue', 'yellow'])     // 위의 것과 다른 결과를 보이는데 위에는 원소 두개를 추가한 것이고

                                                      // 이 문장은 리스트의 원소로 새로운 리스트 ['blue', 'yellow']를 추가한다.

 

insert(위치 인덱스, 값)

  해당 인덱스에 새로운 값을 넣는다.

  colors.insert(1, 'black')                    // 1번 인덱스(즉, 두번째)에 새로운 값 'black'을 집어넣는다.

 

extend(값)

  마지막에 새로운 값을 넣는다.

  colors.extend('white', 'gray')            // 에러. 새원소를 넣을땐 다음과 같이 리스트로 넣는다.

  colors.extend(['white', 'gray'])

 

+ 연산자

  colors += ['red']

  colors += 'red'                                  // 새로운 원소로 'red'가 아닌 'r', 'e', 'd'를 추가한다.

 

 

원소 가져오기

 

index(리스트 원소, 시작위치, 끝나는 위치)

  해당 원소의 리스트를 가져온다.

  colors.index('red')               // 0

  colors.index('red', 1)           // 8

  colors.index('red', 1, 5)        // 주의할 점....해당 구간에 원소가 없으면 에러발생

 

 

count(리스트 원소)

  리스트내에 해당 원소의 갯수를 반환한다.

  colors.count('red')              // 2

 

 

pop([인덱스])

  가장 뒤의 값을 뽑아서 결과를 반환하고 해당 원소를 리스트에서 제거한다.

  인덱스를 지정하면 해당 인덱스의 원소를 반환하고 제거한다.

  colors.pop()                       // 'd', 리스트에서 빠짐

  colors.pop(1)                     // 'black', 인덱스 1인 black이 빠진다.

 

 

 

원소 삭제하기

 

remove(원소값)

  해당 값을 가지는 원소를 제거한다. 반환값 없음

  colors.remove('red')             // 동일값에 대해 앞의 'red'가 빠진다.

 

댓글 없음:

댓글 쓰기