"""
l1 = [11, 2, 3, 22, 2, 4, 11, 3]
去重并保持原来的顺序
"""
#方式一  for 循环方法
l1 = [11, 2, 3, 22, 2, 4, 11, 3]
l2 = [] for i in l1:
if i not in l2:
l2.append(i)
print(l2) #方式二 l3 = list(set(l1)) # 将列表用set去重,再转换回列表(没有按照之前的顺序)
l3.sort(key=l1.index) # 将上一步得到的列表排序,按照l1中的顺序排序
print(l3)

答案

#有同学可能不懂key,key就是一个排序的依据
#在匿名函数中也是这么运用的看下面例子 l4 = [
{"name": "大娃", "age": 38},
{"name": "二娃", "age": 18},
{"name": "三娃", "age": 19},
{"name": "四娃", "age": 29},
{"name": "五娃", "age": 30},
] l4.sort(key=lambda x: x['age'])
print(l4) #实质就是 def tmp(x):
# 返回一个排序的依据 {"name": "大娃", "age": 38},
return x["age"] l4.sort(key=tmp)
print(l4)

最新文章

  1. 贝塔阶段html及pdf模块测试
  2. TestNG官方文档中文版(5)-测试方法/类和组
  3. 似是而非的k=sqrt(n)
  4. Struts2 - Rest(1)
  5. C#超时处理(转载)
  6. SSD常见问题的技术分析
  7. 【转】Android 常用 adb 命令总结
  8. Introducing Visual Studio’s Emulator for Android
  9. 【Loadrunner】初学Loadrunner——安装
  10. offset,client,scroll,style相关笔记
  11. Linux下安装PostgreSQL 转载linux社区
  12. LauncherModel.Callbacks接口
  13. ECSHOP后台编辑器不能上传中文名图片的解决办法
  14. Blender设置界面语言
  15. python collection 中的队列
  16. 使用ActiveMQ实现简易聊天功能
  17. 51 Nod 1024 Set
  18. UML类图(三)-------实例
  19. 泉五培训Day3
  20. 51nod 1096 距离之和最小【中位数】

热门文章

  1. Spring学习--集合属性
  2. domReady的兼容性实现方法
  3. mybatis的一些特殊符号标识(大于,小于,等于,不等于)
  4. 【BZOJ1976】能量魔方 [最小割]
  5. 【洛谷 P1337】[JSOI2004]平衡点 / 吊打XXX (模拟退火)
  6. bzoj 1011 近似估计
  7. Csharp 非安全代码
  8. 设计模式之笔记--简单工厂模式(Simple Factory)
  9. [译]lambda表达式对 SAM (单个抽象方法类)type的处理方式
  10. redis持久化的方法及对比