列表逆向排列的几种实现形式

Posted oldboy2019

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了列表逆向排列的几种实现形式相关的知识,希望对你有一定的参考价值。

# ----------------------------------------------------------------------
# ----------------------------------------------------------------------
排列方向:
# ----------------------------------------------------------------------
li=[1,2,3,a,5,6]
res=li.reverse()
print(li)
print(res)
# [6, 5, ‘a‘, 3, 2, 1]
# None
# 直接将原列表逆向排列,在原列表基础上改,原列表发生改变
# ----------------------------------------------------------------------
li=[1,2,a,4,5,6]
res=li[::-1]
print(li)
print(res)
# [1, 2, ‘a‘, 4, 5, 6]
# [6, 5, 4, ‘a‘, 2, 1]
# 对列表进行反向切片,产生一个新的逆向列表,原列表不变。
# ----------------------------------------------------------------------
#li=[1,‘a‘,3,4,5,6]
iterator=reversed(li)
l=list(iterator)
print(li)
print(iterator)
print(l)
# [1, ‘a‘, 3, 4, 5, 6]
# <list_reverseiterator object at 0x00000161225C8A90>
# [6, 5, 4, 3, ‘a‘, 1]
# 通过reversed对列表进行逆向处理后变为迭代器,通过遍历该迭代器存入新列表,达到列表逆向
# 此时原列表不发生改变
# # ----------------------------------------------------------------------
# # ----------------------------------------------------------------------
排序:
li=[1,6,2,3,7,5,8]
res=sorted(li,reverse=True)
print(li)
print(res)
# [1, 6, 2, 3, 7, 5, 8]
# [8, 7, 6, 5, 3, 2, 1]
# # 用内置函数sorted对列表进行排序,默认是升序,逆序的话,将参数reverse=True就行。
# # 此方法不改变原列表,产生逆序的新列表
# ----------------------------------------------------------------------

这里的最后一种方法sorted实际上不算逆向排列了,属于排序,容易混淆,所以给出。

以上是关于列表逆向排列的几种实现形式的主要内容,如果未能解决你的问题,请参考以下文章

逆向知识第六讲,取摸优化的几种方式

iOS 逆向hook的几种方法

逆向分析快速查找指定代码的几种方法

列表的几种常见内置方法

Laravel:如何在控制器的几种方法中重用代码片段

一张图帮你记忆,Spring Boot 应用在启动阶段执行代码的几种方式