python3 开发面试题(去重保持原来的顺序)6.2
"""
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)
python3 开发面试题(去重保持原来的顺序)6.2的更多相关文章
- python3 开发面试题(面向对象)6.6
""" 封装.继承.多态 1. 谈谈你对面向对象的理解? 2. Python面向对象中的继承有什么特点? 3. 面向对象深度优先和广度优先是什么? 4. 面向对象中sup ...
- python3 开发面试题(collections中的Counter)6.7
''' 编写Python脚本,分析xx.log文件,按域名统计访问次数 xx.log文件内容如下: https://www.sogo.com/ale.html https://www.qq.com/3 ...
- python3 开发面试题(创建表结构)6.9
纯sql语句写出: '''设计 图书管理系统 表结构: - 书 - 书名 - 作者 - 姓名 - 出版社 - 出版社名称 - 地址 一本书只能由一家出版社出版 --> 多对一(书对出版社) 一本 ...
- python3 开发面试题(常用模块以及第三方库)6.5
""" 1. os和sys都是干什么的? 2. 你工作中都用过哪些内置模块? 3. 有没有用过functools模块? """ #sys模块 ...
- python3 开发面试题(装饰器必须考)6.4
def f(): print("2018-06-04") # 每次调用f的时候 在打印"2018-06-04" 之前打印一句 开始, 之后再打印一句 结束 de ...
- python3 开发面试题(字典和拷贝)5.30
""" 问:执行完下面的代码后, l,m的内容分别是什么? """ def func(m): for k,v in m.items(): m ...
- python3 开发面试题(%s和format的区别)5.31
在格式化字符串中有两种方法: 1.%s 2.format 大家常用的是哪一种方法?为什么要用你选的这种方法? 我们先看一个例子: 首先我们定义一个我军需要击杀的恐怖分子的地理坐标为 c=(128,12 ...
- python3 开发面试题(生成列表)6.1
话不多说直接上题: 生成如下列表: [[0, 0, 0, 0, 0], [0, 1, 2, 3, 4], [0, 2, 4, 6, 8], [0, 3, 6, 9, 12]] # 方式一 list1 ...
- 前端开发面试题总结之——JAVASCRIPT(三)
___________________________________________________________________________________ 相关知识点 数据类型.运算.对象 ...
随机推荐
- 7月20号day12总结
今天学习过程和小结 先进行了复习,主要 1,hive导入数据的方式有 本地导入 load data [local] inpath 'hdfs-dir' into table tablename; s ...
- 解读dbcp自动重连那些事
转载自:http://agapple.iteye.com/blog/791943 可以后另一篇做对比:http://agapple.iteye.com/blog/772507 同样的内容,不同的描述方 ...
- sublime JSX Html 标签补全
Preferences -> Package Settings -> Emmet ->key bindings – user { "keys": ["t ...
- 【STSRM12】整除
[题意]给定长度为n的序列A,求最长的区间满足区间内存在数字能整除区间所有数字,同时求所有方案.n<=5*10^5,Ai<2^31. [算法]数论??? [题解]首先一个区间的基准数一定是 ...
- 在Xcode5下实现4.5,4.6的效果
https://www.evernote.com/shard/s227/sh/a575caee-d6a8-4f43-9037-145b9a6913ca/c9a2befa22ce7c3f547f58 ...
- bzoj 1005 组合数学 Purfer Sequence
这题需要了解一种数列: Purfer Sequence 我们知道,一棵树可以用括号序列来表示,但是,一棵顶点标号(1~n)的树,还可以用一个叫做 Purfer Sequence 的数列表示 一个含有 ...
- 意想不到的chrome调试功能
没想到chrome的功能如此强大,绝非仅能使用console.log而已,碰到如此好文必定收藏,感谢大神,本文原创地址为:http://www.cnblogs.com/Wayou/p/chrome-c ...
- (转)Git冲突:commit your changes or stash them before you can merge. 解决办法
用git pull来更新代码的时候,遇到了下面的问题: error: Your local changes to the following files would be overwritten by ...
- ios 里如何处理四舍五入的问题
http://blog.sina.com.cn/s/blog_a2774bb10101293j.html 今天朋友问我一个问题,就是如何只舍不入.比如 float price = 0.126,怎么样才 ...
- 《JavaScript模式》精要
P25. 如何避免eval()定义全局变量? 如: var jsstring = "var un = 1;"; eval(jsstring); console.log(typeof ...