
128 Chapter 2
for 루프 슬라이스
객체
객체
객체
객체
객체
리스트
0
1
2
3
4
Marvin의 슬라이스 파헤치기
앞선 프로그램의 각 슬라이스에는 많은 파이썬 프로그램 기법이 사용되었으므로 자세히
살펴보겠습니다. 아래에 슬라이스 코드의 각 행과 어떤 일이 일어나는지 그림으로
나타냈습니다.
세 개의 슬라이스가 등장하기 전에 프로그램은 먼저 문자열을
paranoid
_
android
라는
변수에 할당하고 이를
letters
라는 리스트로 변환해 할당합니다.
paranoid_android = "Marvin, the Paranoid Android"
letters = list(paranoid_android)
letters
0
M
1
a
6
,
9
h
5
n
8
t
4
i
7
2
r
3
v
10
e
11
14
r
13
a
12
P
15
a
16
n
o
17
-11
i
18
-10
d
23
-5
n
22
-6
A
21
-7
d
19
-9
20
-8
i
26
-2
o
25
-3
r
24
-4
d
27
-1
리스트에서는 양의 인덱스 또는 음의
인덱스 값으로 리스트의 모든 슬롯에
접근할 수 있다는 사실을 기억하세요.
음의 인덱스 값은 몇 개만 표시했습니다.
marvin2
.
py
프로그램에서 각 슬라이스의 결과로 무엇이 만들어지는지 살펴볼 겁니다.
인터프리터가 슬라이스 명세를 보게 되면
letters
에서 슬라이스 객체를 추출한 뒤
객체의 복사본을
for
루프로 반환합니다. ...