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