본문 바로가기

Python

2. 리스트는 문자열 보다 더 강력하다.


출처: 누구나 쉽게 배우는 파이썬 프로그래밍 

(책 내용중 일부 수정 발췌하였습니다. 문제시 비공개로 전환하겠습니다.)




2. 리스트는 문자열 보다 더 강력하다.



다음과 같은 문자열을 이용하여 wizard_list 변수에 항목들의 목록을 저장한다.


>>> wizard_list = 'spider legs, toe of frog, eye of newt, bat wing, slug butter, snake dandruff'

>>> print(wizard_list)

spider legs, toe of frog, eye of newt, bat wing, slug butter, snake dandruff



하지만 우리는 우리가 조작할 수 있는 마법 같은 파이썬의 개체인 리스트(list)를 생성할 수도 있다.

다음은 이러한 항목들을 리스트로 작성한 모습이다. 


>>> wizard_list = ['spider legs', 'toe of frog', 'eye of newt', 'bat wing', 'slug butter', 'snake dandruff']

>>> print(wizard_list)

['spider legs', 'toe of frog', 'eye of newt', 'bat wing', 'slug butter', 'snake dandruff']



리스트는 문자열보다 훨씬 더 유용하다. 왜냐하면 리스트를 조작할 수 있기 때문이다.

예를 들어, 리스트의 위치(인덱스 위치(index position)라고 불리는)를 대활호 ([ ])  안에 입력하여 

winzard_list 의 세 번째 항목(eye of newt)를 출력할 수 있다. 


>>> print(wizard_list[2])

eye of newt


리스트는 인덱스 위치 0 부터 시작하므로 리스트의  첫 뻔째 항목은 0이고 두번째 항목은 1이며, 세번째 항목은 2다.

사람들에게는 이것이 잘 이해되지 않을 수 있겠지만 컴퓨터는 이해한다.


문자열에 있는 것을 수정하는 것보다 리스트에 있는 항목을 수정하는 것이 훨씬 더 쉬울 수 있다. 


>>> wizard_list[2] = 'snail tongue'

>>> print(wizard_list)

['spider legs', 'toe of frog', 'snail tongue', 'bat wing', 'slug butter', 'snake dandruff']



이것은 인덱스 위치 2번에 eye of newt 대신에 snail tongue을 설정한다.


또 다른 방법은 리스트에 있는 항목들의 부분 집합을 표시하는 것이다. 

이 작업은 대활호 안에 콜론(:)을 사용한다.

예를 들어, 맛있는 샌드위치를 위한 최고의 재료들인 리스트의 세 번째 항목에서 

다섯 번째 항목을 보려면 다음과 같이 입력한다.


>>> print(wizard_list[2:5])

['snail tongue', 'bat wing', 'slug butter']


[2:5]라고 쓰는 것은 "인덱스 위치 2에서 부터 인덱스 위치 5(하지만 이것을 포함하지 않음)까지의

항목들을 표시하라."는 의미로, 다시 말하자면 2와 3, 4 항목을 말한다.


리스트는 숫자를 포함한 모든 종류의 항목들을 저장하는 데 사용될 수 있다.


>>> some_numbers = [1, 2, 5, 10, 20]


문자열도 담을 수 있다.


>>> some_strings = ['which', 'withch', 'Is', 'Which']


숫자와 문자열을 섞어서 담을 수도 있다.


>>> numbers_and_strings = ['Why', 'was', 6, 'afraid', 'of', 7, 'because', 7, 8, 9]

>>> print(numbers_and_strings)

['Why', 'was', 6, 'afraid', 'of', 7, 'because', 7, 8, 9]

>>> 


또한 리스트는 다음 리스트를 저장할 수도 있다.



>>> numbers = [1, 2, 3, 4]

>>> strings = ['I', 'kicked', 'my', 'top', 'and', 'it', 'is', 'sore']

>>> mylist = [numbers, strings]

>>> print(mylist)

[[1, 2, 3, 4], ['I', 'kicked', 'my', 'top', 'and', 'it', 'is', 'sore']]



이번 리스트 안에 있는 리스트 예제는 세 개의 변수를 생성한다. 

세 개의 변수는 네 개의 숫자로 구정된 numbers와 예덟 개의 문자열로 구성된 strings numbers와 strings를 사용하는

mylist이다. 

세 번째 리스트(mylist)는 두개의 항목만 가지고 있다. 왜냐하면 각각의 리스트에 대한 변수명이지,

그 변수에 있는 내용이 아니기 때문이다.


'Python' 카테고리의 다른 글

5. 리스트 연산  (0) 2016.12.01
4. 리스트에서 항목 삭제하기  (0) 2016.12.01
3. 리스트에 항목 추가하기  (0) 2016.12.01
1. 문자열 곱하기  (0) 2016.12.01
Python  (0) 2016.11.29