Python中文
首页
教程
问答
标签
搜索
登录
注册
求两个不含s的列表的差分的快速方法
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我试图比较两个列表并获得新元素,包括冗余元素。 例如,结果是:</p> <pre><code>l1 = [1,2,3,3,4] l2 = [3,3,3,4,4,5,6] </code></pre> <p>是:</p> ^{pr2}$ <p>你很容易理解我不能用set来做,因为</p> <pre><code>set(l1) = (1,2,3,4) set(l2) = (3,4,5,6) </code></pre> <p>结果是:(5,6)</p> <p>我不想用像</p> <pre><code>[i for i in l1 if i not in l2 ] </code></pre> <p>因为它太慢了(参见<a href="https://stackoverflow.com/questions/3462143/get-difference-between-two-lists">Get difference between two lists</a>的基准测试)</p> <p>有没有人知道如何在没有迭代的情况下做到这一点,并且保持冗余元素或迭代方法是唯一的方法吗?在</p> <p>谢谢!在</p> <p><strong>解决方案的基准测试:</strong></p> <p>我对两个给定的解决方案进行了基准测试,结果如下:</p> <pre><code>import random init1 = list(range(10000)) init2 = [i*random.randint(1,50) for i in range(10000)] # Put both solution in function, diff1 = remove method, diff2 = Counter method import time tic1 = time.clock() print(diff1(init2,init1)) toc1 = time.clock() tic2 = time.clock() print(diff2(init2,init1)) toc2 = time.clock() print(toc1-tic1) print(toc2-tic2) </code></pre> <p>结果是:</p> <pre><code>2.756271607145601 for diff1 0.028116911506909315 for diff2 </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您可以按如下方式进行操作:</p> <pre><code>l1 = [1,2,3,3,4] l2 = [3,3,3,4,4,5,6] l3 = l1[:] l4 = l2[:] for item in l2: if item in l3: l3.remove(item) l4.remove(item) >>> print l4 [3,4,5,6] </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何在Excel中读取公式并将其转换为Python中的计算?
6 回答
如何在excel中读取嵌入的excel,并将嵌入文件中的信息存储在主excel文件中?
7 回答
如何在Excel中返回未知列长度的非空顶行列值?
3 回答
如何在excel中选择数据列?
4 回答
如何在Excel中通过脚本自动为一列中的所有单元格创建公共别名
2 回答
如何在excel中高效格式化范围AttributeError:“tuple”对象没有属性“fill”
6 回答
如何在excel单元格中编写python函数
1 回答
如何在excel单元格中自动执行此python代码?
10 回答
如何在excel工作表中创建具有相应值的新列
10 回答
如何在Excel工作表中复制条件为单元格颜色的python数据框?
8 回答
如何在Excel工作表中循环
10 回答
如何在excel工作表中打印嵌套词典?
6 回答
如何在excel工作表中绘制所有类的继承树?
1 回答
如何在Excel工作表中自动调整列宽?
10 回答
如何在excel工作表中追加并进一步处理
6 回答
如何在excel工作表之间进行更改?
6 回答
如何在excel或csv上获取selenium数据?
10 回答
如何在Excel或Python中将正确的值赋给正确的列
5 回答
如何在excel或python中提取单词周围的文本?
6 回答
如何在excel或python中转换来自Jira的3w 1d 4h的fromat数据?
8 回答