常规通过迭代或set方法,都无法保证去重后的顺序问题
如下,我们可以通过列表的索引功能,对set结果进行序列化
old_list=["a",1,"b","a","b",2,5,1] new_list=list(set(old_list)) print new_list #['a', 1, 2, 'b', 5] new_list.sort(key=old_list.index) print new_list #['a', 1, 'b', 2, 5]
以上这篇python列表list保留顺序去重的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。
问题内容: 我有一个清单 并希望“移动”其值,以便将其更改为 下一步 Python中是否有内置函数可以做到这一点? 还是有比这更好或更短的方法 问题答案: a = [1,2,3,4,5] >>> a.append(a.pop(0)) >>> a [2, 3, 4, 5, 1] 但是,这很昂贵,因为它必须移动整个列表的内容,即O(n)。如果在您的Python版本中可用,则可能是一个更好的选择,它允许
问题内容: 在使用Python Pandas进行读写时,是否可以保留csv文件中列的顺序?例如,在此代码中 输出文件可能会有所不同,因为未保留列。 问题答案: 当前版本的Pandas(‘0.11.0’)中似乎存在一个错误,这意味着Matti John的答案将不起作用。如果您指定要写入文件的列,则它们将按字母顺序书写,而只是根据cols中的列表重新标记。例如,此代码: 导致以下(错误)输出: 您可以
问题内容: 我注意到JSON对象中元素的顺序不是原始顺序。 JSON列表的元素呢?他们的订单得到维护吗? 问题答案: 是的,JSON数组中元素的顺序得以保留。从RFC 7159开始-JavaScript对象表示法(JSON)数据交换格式 (重点是我的): 对象是零个或多个名称/值对的 无序 集合,其中名称是字符串,值是字符串,数字,布尔值,null,对象或数组。 数组是零个或多个值的 有序 序列。
问题内容: Java Set是否保留顺序?有一种方法将Set返回给我,并且假定数据是有序的,但是遍历Set时,数据是无序的。有没有更好的方法来解决这个问题?是否需要更改方法以返回Set以外的内容? 问题答案: 该Set接口不提供任何订购保证。 它的子接口代表根据某种标准排序的集合。在Java 6中,有两个实现的标准容器。他们是和。 除了SortedSet接口之外,还有类。它记住元素插入到集合中的顺
顺序表(Sequential List) 1. 顺序表的概念 1.1 顺序表的定义 顺序表是线性表基于一维数组的顺序存储表示。 1.2 顺序表中各元素的逻辑及存储关系 顺序表是按照顺序存储方式存储的线性表, 把线性表中的所有表项按照其逻辑顺序依次存储到从计算机存储中指定存储位置开始的一块连续的存储空间中。 顺序表各个表项的逻辑顺序与其存放的物理顺序一致,即第i个表项存储于第i个物理位置(1<=i<
我试图编写一个代码,它接收并删除该中的重复字符。 例如。如果,则应返回。到目前为止,我的代码只返回与给定的相同的tekst…