Computer >> Máy Tính >  >> Lập trình >> Python

Tại sao chỉ mục cắt chuỗi con nằm ngoài phạm vi hoạt động trong Python?

Việc cắt ra ngoài giới hạn của một trình tự (ít nhất là đối với trình tự cài sẵn) không gây ra lỗi. Việc lập chỉ mục trả về một mục duy nhất, nhưng việc cắt sẽ trả về một dãy con của các mục. Vì vậy, khi bạn cố gắng lập chỉ mục một giá trị không tồn tại, sẽ không có gì để trả về; nhưng khi bạn cắt một chuỗi ngoài giới hạn, bạn vẫn có thể trả về một chuỗi trống. Ví dụ:

>>> s = [1, 2, 3]
>>> s[5:8]
[]

Nhưng nếu bạn chỉ sử dụng một chỉ mục ngoài giới hạn, nó sẽ gây ra lỗi cho bạn:

>>> s = [1, 2, 3]
>>> s[5]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range