比较 2 个列表而不使用“in”
Posted
技术标签:
【中文标题】比较 2 个列表而不使用“in”【英文标题】:Comparing 2 lists without using "in" 【发布时间】:2017-03-02 17:46:57 【问题描述】:如果没有在 if 语句中使用单词“in”,我无法检查 list1 中的数字是否在 list2 中。另外,我只能使用函数 len() 和 range()
【问题讨论】:
那么到目前为止你尝试过什么? 这看起来像一个家庭作业,这不是你的家庭作业解决论坛。 欢迎来到 Stack Overflow!请edit您的问题显示what you have tried so far。您应该包含您遇到问题的代码的minimal reproducible example,然后我们可以尝试帮助解决具体问题。您还应该阅读How to Ask。 这是什么虐待狂的作业……你的意思是你只能使用函数 len 和 range?(显然这个作业的作者不明白只使用这两个函数是不可能的。 .. 解决这个问题(当然你也使用类似__getattr__
:P)
wiki.python.org/moin/ForLoop
【参考方案1】:
>>>l1 = [i for i in range(1,25)]
>>>l2 = [i for i in range(24, 50)]
>>>[x for x in l1 if x in l2]
[24]
对不起,我看错了。这个怎么样:
for i in range(len(l1)):
for j in range(len(l2)):
if l2[j] == l1[i]:
print l2[j]
如果您需要将匹配项添加到列表中,只需在循环之外创建一个列表并追加即可。
【讨论】:
以上是关于比较 2 个列表而不使用“in”的主要内容,如果未能解决你的问题,请参考以下文章