Python 清單旋轉
Python 程式語言提供了多種操作清單的方法,包括旋轉其元素的任務。旋轉涉及將清單中的每個元素向指定方向(向右或向左)移動指定數量的位置。
Python 中列表旋轉的一種簡單而有效的方法是透過切片和串聯。以下程式碼定義了執行此操作的函數:
def rotate(l, n):
return l[-n:] l[:-n]
函數中,l表示輸入列表,n表示要旋轉的位置數。函數首先使用切片建立兩個新清單:l[-n:] 和 l[:-n]。前者捕獲清單末尾的元素,而後者捕獲剩餘的元素。然後將兩個列表連接起來以實現所需的旋轉。
例如,考慮下面的Python 列表l:
l = [1, 2, 3, 4, 5]
如果我們希望將l 向右旋轉一個位置,我們將呼叫rotate(l, 1):
rotated_l = rotate(l, 1)
print(rotated_l) # Output: [2, 3, 4, 5, 1]
在這個例子中,原始列表的第一個元素被移到末尾,得到輸出列表[2, 3 , 4 , 5, 1].
rotate 函數也可以處理n 的負值,表示向左旋轉。使用負數 n,元素將移動到右側而不是左側。
rotated_l = rotate(l, -1)
print(rotated_l) # Output: [5, 1, 2, 3, 4]
在本例中,l 向左旋轉一個位置,將最後一個元素移到前面。
需要注意的是,rotate 函數不會修改輸入清單 l。相反,它會創建一個包含旋轉元素的新清單。此行為與 Python 的不可變列表設計一致,不鼓勵修改原始列表。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3