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 個元素反轉切片,它提供了一種簡單的方法來獲取列表的子集。它用於處理大型資料集以反向提取列表的精確部分。這種型別的程式碼解決了需要以反向方式分析資料的特定任務。
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP