• 카테고리

    질문 & 답변
  • 세부 분야

    프로그래밍 언어

  • 해결 여부

    해결됨

슬라이싱 관련 헷갈려서 문의드립니다.

21.01.14 23:04 작성 조회수 93

0

두 가지 질문드립니다. 

str_sl = "Nice Python" 이라 변수를 선언했을 때 

질문1 ) 

print(str_sl[a:b])는 

"0부터 시작하여 a번째에 해당하는 문자" 에서부터 

"0부터 시작하여 b-1번째에 해당하는 문자" 까지 나타내라

이렇게 해석하는 것이 맞는지요... 

질문2) 

print(str_sl[-5:1])을 실행하니 공백이 나옵니다. 

역방향으로 시작하여 -5번째 문자는 y 

역방향에서 1-1=0 번째 문자는 없으니 

그냥 공백으로 나온 것인지요....?? 

답변 3

·

답변을 작성해보세요.

2

PARK JUNYEONG님의 프로필

PARK JUNYEONG

2021.01.15

질문1 ) 

print(str_sl[a:b])는 

"0부터 시작하여 a번째에 해당하는 문자" 에서부터 

"0부터 시작하여 b-1번째에 해당하는 문자" 까지 나타내라

이렇게 해석하는 것이 맞는지요... 

---------------------------------------------------

넵 맞습니다!

아래 제가 Github에 정리해서 올린내용입니다 

https://github.com/hallymer/Python_Basic/blob/master/chapter03_02.py

들어가서 #슬라이싱 [start : end] 부분을 참고하시면 이해가 되실 것 같습니다 :)

---------------------------------------------------

질문2) 

print(str_sl[-5:1])을 실행하니 공백이 나옵니다. 

역방향으로 시작하여 -5번째 문자는 y 

역방향에서 1-1=0 번째 문자는 없으니 

그냥 공백으로 나온 것인지요....?? 

---------------------------------------------------

일단 print(str_sl[-5:])을 실행시키면,

출력으로 "ython"으로 출력되는거 알죠?

start부분이 -5 음수가 되면 오른쪽부터 출력이 된다고 강의에서 그랬죠?

다른 예시로 print(str_sl[-5:-4])를 하게되면 출력으로 "y"만 나옵니다.

print(str_sl[-5:-5])로 하게되면 출력으로 공백으로 나옵니다.

print(str_sl[-5:1])를 하면 문자가 없어 공백으로 나옵니다 :)

도움이 되었으면 우측하단 또는 좌측하단에 하트 한번만 눌러주세요 :)

0

감사합니다.

0

오오 조금 늦게 봤네요. 답변 감사합니다.