人生苦短,快学Python!
列表是 Python 中基本且最常用的数据结构之一,它是一个可变且有序的对象集合,也可以存储重复值。有时候我们需要将列表元素进行逆序排列,也就是所有的元素位置反转。
今天就跟大家聊聊反转Python列表的4种方法。
在交互式环境中输入如下命令:
list_kx = [1, 2, 3, 4, 5, "快学", "Python"]
list_reversed = list_kx[::-1]
list_reversed
输出:
=
列表切片语法:列表名[x:y:z]
x:切片开始位置,默认为0 y:切片截止(但不包含)位置,默认为列表长度 z:切片的步长,默认为1;-1则表示从最后元素开始切片
在交互式环境中输入如下命令:
list_kx = [1, 2, 3, 4, 5, "快学", "Python"]
list_kx.reverse()
list_kx
输出:
列表对象的reverse()
方法可以使之反转,该方法没有返回值,将列表中的所有元素进行原地逆序。
在交互式环境中输入如下命令:
list_kx = [1, 2, 3, 4, 5, "快学", "Python"]
list_reversed = reversed(list_kx)
list(list_reversed)
输出:
与上一个reverse()
方法不同,Python内置的reversed()
函数不对原列表做任何修改,而是返回一个逆序排列后的迭代对象。
因为它返回的是一个迭代器,所以我们需要使用list(list_reversed)
转换一下。
在交互式环境中输入如下命令:
list_kx = [1, 2, 3, 4, 5, "快学", "Python"]
list_reversed = [list_kx[len(list_kx)-i-1] for i in range(len(list_kx))]
list_reversed
输出:
使用for循环和列表索引,返回结果将是一个新的反转列表。
好了,今天分享的这4个方法,都可以用来使Python列表反转。而且也不必拘泥于此,比如一个列表元素是按照顺序或者逆序排列的,我们也可以使用sorted()
函数来使之“反转”。
如果喜欢今天的分享,欢迎给本文点赞👍