Python - 反轉 K 個元素的切片


反向切片是透過建立一個從字串長度開始到第 0 個索引結束的切片來定義的。對於反轉列表元素,它將使用負值表示法,我們可以獲得原始列表元素的反轉順序。在 Python 中,我們有一些內建函式,例如 append()、len() 和 range() 將用於解決 K 個元素的反轉切片問題。

語法

以下語法在示例中使用 -

append()

此 Python 內建方法可用於在列表末尾新增元素。

len()

內建函式 len() 用於返回物件的長度。

range()

range() 是 Python 中的內建函式,它根據給定的範圍返回數字序列。

reversed()

reversed() 是 Python 中的內建函式,它以反向順序的形式返回給定的列表元素。

使用切片

在以下示例中,我們將從名為 rev_slice 的函式開始程式,該函式接受引數 r_list 和 k 以接收輸入值。接下來,使用切片表示法,它將根據 K 值反轉元素並獲得所需的結果。

示例

def rev_slice(r_list, k):
    return r_list[-k:][::-1]
test_list = [2, 4, 20, 40, 60, 80]
k = 2
output = rev_slice(test_list, k)
print("The reverse slice based on the K element:\n", output)

輸出

 The reverse slice based on the K element: [80, 60]

使用 reversed()

在以下示例中,我們將使用遞迴函式,該函式在需要時會呼叫自身。接下來,使用內建函式 reversed(),它接受引數 t_list[-k:] 以列表形式反轉所有元素。

示例

def rev_slice(t_list, k):
    return list(reversed(t_list[-k:]))
test_list = [1, 2, 3, 4, 5]
# Initialize the K value
k = 2
# Calling function
output = rev_slice(test_list, k)
print("The following K element reverse:", output)

輸出

 The following K element reverse: [5, 4]

使用列表推導式

在以下示例中,程式使用列表推導式,該推導式使用 for 迴圈,其中變數 i 遍歷輸入列表,並使用內建函式 range() 簡化從開始到結束的索引序列。為了反轉 K 個元素,它將使用切片表示法[::-1]。

示例

def rev_slice(t_list, k):
    return [t_list[i] for i in range(len(t_list) - k, len(t_list))][::-1]
test_list = [2, 4, 20, 40, 11, 12]
k = 4
res = rev_slice(test_list, k)
print("The K reverse element are-",res)

輸出

 The K reverse element are- [12, 11, 40, 20]

使用 range() 和 append()

在以下示例中,我們將從使用遞迴函式 rev_slice() 開始程式,該函式接受兩個引數 t_list 和 k,它們將接收輸入列表元素和 k 值以處理反向切片。接下來,在變數 reversed_slice 中使用空列表,該列表將用於儲存最終結果。然後使用 for 迴圈,其中變數 i 在一些內建函式(如 range() 和 len())的幫助下遍歷輸入列表。繼續返回 reversed_slice 以獲取特定的列表元素。

示例

def rev_slice(t_list, k):
    reversed_slice = []
    for i in range(len(t_list) - 1, len(t_list) - k - 1, -1):
        reversed_slice.append(t_list[i])
    return reversed_slice
test_list = [10, 20, 30, 40, 50, 60, 70, 80]
k = 3
res = rev_slice(test_list, k)
print("Following K reverse element:", res)

輸出

 Following K reverse element: [80, 70, 60]

結論

我們探討了 Python 中的 K 個元素反轉切片,它提供了一種簡單的方法來獲取列表的子集。它用於處理大型資料集以反向提取列表的精確部分。這種型別的程式碼解決了需要以反向方式分析資料的特定任務。

更新於: 2023年8月16日

138 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

立即開始
廣告

© . All rights reserved.