當切片的結束位置超出列表的長度時,Python會自動將結束位置設置為列表的最后一個元素的索引加1。因此,可以通過判斷切片的結束位置是否超出列表的長度,來避免切片超出長度的問題。
以下是一種解決方法:
my_list = [1, 2, 3, 4, 5]
start = 0
end = 10 # 超出列表長度的結束位置
if end > len(my_list):
end = len(my_list)
sliced_list = my_list[start:end]
print(sliced_list)
輸出結果為:
[1, 2, 3, 4, 5]
在上面的代碼中,我們通過比較end
和len(my_list)
,如果end
超出了列表的長度,就將其設置為列表的長度。這樣就可以避免切片超出長度的問題。