在 Python 中查找列表中元素的相对顺序
pythonserver side programmingprogramming更新于 2026/1/22 21:32:17
我们给出了一个列表,其元素是整数。我们需要找到相对顺序,这意味着如果它们是按升序排列的,那么我们需要找到它们位置的索引。
使用 sorted 和 index
我们首先对整个列表进行排序,然后在排序后找出每个列表的索引。
示例
listA = [78, 14, 0, 11]
# 打印原始列表
print("给定列表为: \n",listA)
# 使用 sorted() 和 index()
res = [sorted(listA).index(i) for i in listA]
# 打印结果
print("具有元素相对排序的列表: \n",res)
输出
运行上述代码得到以下结果 −
给定列表为: [78, 14, 0, 11] 具有元素相对排序的列表: [3, 2, 0, 1]
使用枚举和排序
使用枚举和排序函数,我们检索每个元素,然后创建一个包含枚举和排序函数的字典容器。我们使用 map 函数通过此容器获取每个元素。
示例
listA = [78, 14, 0, 11]
# 打印原始列表
print("Given list is : \n",listA)
# 使用 sorted() 和 enumerate
temp = {val: key for key, val in enumerate(sorted(listA))}
res = list(map(temp.get, listA))
# 打印结果
print("list with relation ordering of elements : \n",res)
输出
运行上述代码得到以下结果 −
Given list is : [78, 14, 0, 11] list with relation ordering of elements : [3, 2, 0, 1]
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

