python之使用set对列表去重,并保持列表原来顺序

#原始方法,但是会打乱顺序

mylist = [1,2,2,2,2,3,3,3,4,4,4,4]
myset = set(mylist) #myset是另外一个列表,里面的内容是mylist里面的无重复 项

# 收件人去重,并保持原来的收件人顺序
mailto = [‘cc‘, ‘bbbb‘, ‘afa‘, ‘sss‘, ‘bbbb‘, ‘cc‘, ‘shafa‘]
addr_to = list(set(mailto))
addr_to.sort(key = mailto.index)

原文地址:https://www.cnblogs.com/laowangball/p/8424432.html

时间: 2024-10-20 01:05:55

python之使用set对列表去重,并保持列表原来顺序的相关文章

python列表去重 冒泡排序 插序排序

python对列表去重例子 #!/usr/bin/env python arr_num1 = [1,2,3,4,2,12,3,14,3,2,12,3,14,3,21,2,2,3,4111,22,3333,4] arr_num2 = [2,1,3,2,43,234,454,452,234,14,21,14] num_list = [] for i in arr_num1:     if i in arr_num2 and i not in num_list:      num_list.appen

Python练习题4(列表去重):[5,3,4,'ok',4,3,'abc',8,52,'ok']去除列表中重复内容 方法一:使用set 方法二:不使用set,自己写方法

方法一:利用集合去重 1 list1 = [5,3,4,'ok',4,3,'abc',8,52,'ok'] 2 list1=list(set(list1)) 3 print(list1) 方法二:此方法略微冗余,先判断元素是否重复,再将重复元素提取并保存到新列表中,再for 新建的列表元素,删除原列表 1 def list_dup(ls): 2 list2 = [] 3 length = len(ls) #获取列表元素个数 4 for i in range(0,length-1): 5 for

python含嵌套的列表去重问题

今天遇到一个问题,纠结一段时间后终于想到一个方法,挺开心的,就记录下. 问题简化之后是这样的:对于python中类似这样的一个列表 [{'A':2,'B':3,'C':4},{'A':2,'B':4,'C':5},{'A':2,'B':3,'C':5},{'A':2,'B':3,'C':6}] 其中列表的每个元素是有相同结构的字典,我想找出字典中A与B的组合是唯一的列表,C不同时选择最初的那个. 我希望得到的最后结果是这样的[{'A':2,'B':3,'C':4},{'A':2,'B':4,'C

python 日常已记 列表去重

常规列表去重的两种方法 第一种: list=[1,2,2,2,2,3,4,5,5,6,7,8,8,9] list2=[] for a in list: if a not in list2: list2.append(a) print (list2) 第二种: list=[1,2,2,2,2,3,4,5,5,6,7,8,8,9] list=list(set(list)) print (list3) 原文地址:https://www.cnblogs.com/mahaining/p/9434184.h

2017.7.17 列表去重,列表元组,集合

生成列表: aa = [i for i in range(1,18)] 列表    a = [11,22,3,11,22,3]增删改查 元组    b = (11,22,33,11,22,33)只读 集合    c = {11,22,33} 增删改查,但是元素不能重复 列表去重 d = set(a)  d 是集合 f = list(d)    f是列表

Python List extend()方法-用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

描述 extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表). 语法 extend()方法语法: list.extend(seq) 参数 seq -- 元素列表. 返回值 该方法没有返回值,但会在已存在的列表中添加新的列表内容. 实例 以下实例展示了 extend()函数的使用方法: #!/usr/bin/python aList = [123, 'xyz', 'zara', 'abc', 123]; bList = [2009, 'manni']; aLi

Python 基础【第五篇】元组和列表

一 .Python之列表: 其实所谓的列表我个人感觉和shell 中的数组是一样的(只是个人见解哦),列表其实说白了就是元素的组合: 格式: Name = [a,b,c,d] 下标: 每一个列表中的元素都对应一个下标下标的起始位为0 比如列表[a,b,c,d] a对应的下标为0 b对应的下标为1 c对应的下标为2 …… 1.1.定义列表: 比如定义列表group 元素分别为(test,11,bbb,343,ccc) >>> group = ["test",11,&qu

读书笔记--《Python基础教程第二版》--第2章列表和元组

第二章 列表和元组 2.1 序列的概览 序列:每个元素被分配一个序号  6种:列表.元组.字符串.Unicode字符串.buffer对象.xrange对象         序列可以嵌套序列          python容器的概念:序列.字典.集合 2.2 通用序列的操作 索引.分片.加.乘.属于.长度,最大值.最小值.迭代 2.2.1 索引 >>> greeting='Hello' >>> greeting[0] 'H' >>> greeting[-

python基础IV(切片、迭代、生成列表)

对list进行切片 取一个list的部分元素是非常常见的操作.比如,一个list如下: >>> L = ['Adam', 'Lisa', 'Bart', 'Paul'] 取前3个元素,应该怎么做? 笨办法: >>> [L[0], L[1], L[2]] ['Adam', 'Lisa', 'Bart'] 之所以是笨办法是因为扩展一下,取前N个元素就没辙了. 取前N个元素,也就是索引为0-(N-1)的元素,可以用循环: >>> r = [] >>

重学Python - Day 03 - python基础 -> while循环实例 + Continue && break的应用 + 列表的初步学习

while语句的应用 实例如下: 1 """ 2 述求:用户登录系统,最多只能登录三次 3 第三次失败后,程序终止 4 5 """ 6 user_table = {"python":"important","java":"more_important","shell":"linux"} 7 time = 1 8 9 while