Inflearn Community Q&A
슬라이싱 질문
Written on
·
178
4
str_sl = 'Dead by Daylight'
print(str_sl[::-1])
print(str_sl[1::-1])
연습할때 이렇게 했었는데 결과가
thgilyaD yb daeD eD
이런식으로 나오는 이유를 모르겠습니다
처음건 당연히 [(처음부터) : (끝까지) : (-1로 가면서)] 출력
이니까 이해가 되는데
그러면
[(1부터) : (끝까지) : (-1로 가면서)] 출력이니
처음에는 저가 상상하기로
thgilyaD yb dae
이렇게 나오지 않을까 했는데
eD
나왔습니다
그래서 아 그러면 0이 아닌 기준이 생기면 거기서부터 +또는 -값의 끝을 정하는구나 라고 생각했는데
Dead by Daylight
의 1은 D와 e 사이 일텐데
그러면 여기서 슬라이싱이 되서
D 하나만 출력이 되야 하는거 아닌가요?
eD가 출력이 될려면
{0}D{1}e{2}a{3}d{4} {5}
2에서 슬라이싱이 되어야하니
[2::-1] 되어야할거같은데
왜 이렇게 되는지 궁금합니다
질문이 너무 길었는데
저가 이해하고있는게 맞는지도 궁금합니다.
python
Answer 1
3
새콤한 비버
Instructor
안녕하세요.
인프런 파이썬 강좌 TA 박유진입니다.
[a::-1]이라고 하면 a번째 인덱스부터 거꾸로 출력하라는 의미로 받아들이시면 됩니다.
따라서 [1::-1]의 경우는 1번째 인덱스의 값인 e부터 거꾸로 출력하니
eD가 나오는 것이 맞습니다.
이해에 도움이 되셨나요?
다른 값을 넣어가며 출력하면 이해에 도움이 되실 겁니다.





