117.info
人生若只如初见

python数组排序返回索引怎么实现

你可以使用sorted()函数来对数组进行排序,并使用enumerate()函数来获取每个元素的索引。这样可以得到一个排序后的元素列表和对应的索引列表。

以下是一个例子:

arr = [5, 2, 7, 1, 9]
sorted_arr = sorted(enumerate(arr), key=lambda x: x[1])
sorted_indices = [index for index, _ in sorted_arr]

print(sorted_indices)  # 输出: [3, 1, 0, 2, 4]

在这个例子中,sorted()函数会根据数组arr的值对其进行排序,返回一个元组的列表,其中每个元组包含元素的索引和对应的值。然后,我们使用key=lambda x: x[1]来指定排序的依据是元组中的第二个元素(值)。最后,通过enumerate()函数获取了排序后的元素列表,并使用一个列表推导式[index for index, _ in sorted_arr]取出了排序后的索引列表。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe8daAzsLBQJXB1Y.html

推荐文章

  • linux的python如何进行进程管理

    在Linux中,可以使用Python的内置库os和subprocess进行进程管理 使用os.system()执行外部命令: import os # 执行外部命令,例如:ls
    os.system("ls") 使用...

  • linux的python怎样进行系统调用

    在Linux中,Python可以通过os和sys库进行系统调用 使用os库: os库提供了许多与操作系统交互的函数。例如,要使用os.system()执行系统命令,可以这样做:
    i...

  • python中set怎样进行集合排序

    在Python中,可以使用sorted()函数对集合(set)进行排序。sorted()函数返回一个排序后的列表(list),而不是集合,因为集合本身是无序的。以下是一个示例:

  • python中set如何进行集合转换

    在Python中,可以使用集合(set)的内置方法进行集合转换。以下是一些常用的集合转换方法: 将列表转换为集合: my_list = [1, 2, 3, 4, 5]
    my_set = set(m...

  • linux系统硬盘分区的原则有哪些

    在进行Linux系统硬盘分区时,有一些原则需要遵循:1. 分区类型原则:根据不同的用途和需求,确定分区类型,如根分区(/),交换分区(swap),/boot分区等。2. 分...

  • c++字符串拼接出现乱码怎么解决

    在C++中,字符串拼接可能会导致乱码的问题,主要是由于编码不一致或字符串中包含特殊字符。以下是一些解决乱码问题的方法:1. 确保字符串的编码一致:字符串的编...

  • Mysql中如何设置外键

    在 MySQL 中,可以使用 FOREIGN KEY 约束来设置外键。外键约束用于确保关系数据库中的数据的完整性和一致性。以下是在 MySQL 中设置外键的步骤:1. 创建两个相关...

  • android framework怎么使用

    Android框架是用于开发Android应用程序的一套工具和库。要使用Android框架,您可以遵循以下步骤:1. 安装Android开发工具包(Android SDK):首先,您需要在计算...