범위를 벗어난 부분 문자열 슬라이싱: 작동 이유
Python에서 부분 문자열 슬라이싱은 일반적으로 인덱스가 아웃되면 오류가 발생합니다. 범위에는 이 동작에 대한 예외가 있습니다. '예'[999:9999] 작업을 고려해 보세요. 오류 대신 빈 문자열을 반환합니다.
이는 범위를 벗어난 인덱스를 사용하여 부분 문자열을 슬라이싱해도 예외가 발생하지 않기 때문입니다. 대신, Python은 이를 시퀀스의 길이를 넘어 확장되는 범위로 해석하여 빈 하위 시퀀스가 생성됩니다. 이 동작은 단일 요소를 인덱싱하는 것과 다르며, 인덱스가 범위를 벗어나면 오류가 발생합니다.
문자열과 목록을 처리할 때 인덱싱과 슬라이싱의 차이가 분명해집니다. 예를 들어, 목록을 인덱싱할 때 범위를 벗어난 인덱스는 오류를 반환하고, 분할하면 빈 목록이 생성됩니다.
[0, 1, 2, 3, 4, 5][3] # Returns 3 [0, 1, 2, 3, 4, 5][3:4] # Returns [3]
반면, 문자열은 다르게 작동합니다. 단일 문자는 본질적으로 Python에서 1문자 문자열이므로 범위를 벗어난 색인으로 문자열을 인덱싱하면 사실상 빈 문자열이 생성됩니다.
'example'[3] # Returns 'm' (the character at index 3) 'example'[3:4] # Also returns 'm' (a substring of length 1)
요약하면, 범위를 벗어난 부분 문자열 분할은 범위 인덱스는 시퀀스의 길이를 벗어나는 범위로 해석되어 빈 하위 시퀀스가 발생하므로 오류가 발생하지 않습니다. 그러나 단일 요소를 인덱싱하면 인덱스가 범위를 벗어나면 오류가 발생합니다.
위 내용은 Python에서 범위를 벗어난 부분 문자열 분할이 오류 대신 빈 문자열을 반환하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!