파이썬 slice notation(: 쓰는거)좀 알려주세요

notation 쓰면 되게편하다고 하던데 배우기가 어렵네요. 아직 잘 모르겠어서 그런데 예시좀 들어서 설명해주실분?

1답변

  • 좋아요

    0

    싫어요
    채택취소하기

    slice는 start:stop[:step]의 형식으로 쓸 수있습니다. 여기서 [:step]은 써도 되고 안써도 된다는 의미입니다.

    step을 명시하지 않을 경우에는

    1. a[start:end] # start부터 end-1까지의 item
    2. a[start:] # start부터 리스트 끝까지 item
    3. a[:end] # 처음부터 end-1까지의 item
    4. a[:] # 리스트의 모든 item

    step value를 쓰는 경우에는

    1. a[start:end:step]# start부터 end-1까지 step만큼 인덱스 증가시키면서

    step을 지정할 때 :end에 유의하세요 endend부터 포함시키지 않겠다는 의미이지 end가 꼭 포함된다는 의미는 아닙니다.

    startend가 음수가 음수인 경우에는 리스트의 끝에서부터 카운트하겠다는 의미입니다.

    1. a[-1] # 맨 뒤의 item
    2. a[-2:] # 맨 뒤에서부터 item2개
    3. a[:-n] # 맨 뒤의 item n개 빼고 전부

    예제를 보여드릴게요

    a = [10,11,12,13,14,15,16,17,18,19]
    
    print "a =", a
    print "a[0:1]:", a[0:1]
    print "a[0:1]:", a[0:10]
    print "a[0:1]:", a[0:20]
    print "a[0:1]:", a[0:10:2]
    print "a[0:1]:", a[:-2]
    print "a[0:1]:", a[:-30]
    

    의 결과는

    a = [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
    a[0:1]: [10]
    a[0:1]: [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
    a[0:1]: [10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
    a[0:1]: [10, 12, 14, 16, 18]
    a[0:1]: [10, 11, 12, 13, 14, 15, 16, 17]
    a[0:1]: []
    

    입니다.

    자세한건 여기를 참고해 주세요

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.