我真的很困惑,現在:空字符串返回而不是IndexError
>>> string = "some string"
>>> string[100:105]
''
>>> string[100]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: string index out of range
爲什麼string[100:105]
返回一個空字符串,而string[100]
引發IndexError(如預期)?爲什麼string[100:105]
不會引發IndexError?
因爲這就是它的定義。切片永遠不會引起索引錯誤。 –
這只是他們做出的奇怪的設計決定。 – user2357112
http://stackoverflow.com/questions/9490058/why-substring-slicing-index-out-of-range-works-in-python。標記爲重複 – nir0s