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 个元素反转切片,它提供了一种简单的方法来获取列表的子集。它用于处理大型数据集以反向提取列表的精确部分。这种类型的代码解决了需要以反向方式分析数据的特定任务。