如何在Python 3中检查两个不同列表中的相同项?

10 浏览
0 Comments

如何在Python 3中检查两个不同列表中的相同项?

在Python中,如何检查两个列表是否包含相同的项,并返回这些项的列表,或者如果有匹配项则返回True?\n给定:\n

list1=[1,2,3,4,5]
list2=[2,4,6,8]

\n如何返回:\n

list3=[2,4]

\n或者使用检查是否为True,如下所示:\n

if 存在匹配项:
    做某事

\n此外,如何将列表的项连接成一个序列或字符串?\n给定:\n

list1=[1,2,3,4,5]

\n如何返回:\n

list2=[12345]

0
0 Comments

问题:如何在Python 3中检查两个不同列表中的相同项?

原因:该问题的出现是因为用户希望找到两个不同列表中的相同项,并且希望知道如何通过Python 3来实现。

解决方法:

1. 检查两个列表中的相同项并返回一个新的列表:

list1=[1,2,3,4,5]
list2=[4,2,3,9,9]
list3 = list( set( list1 ).intersection( set( list2 ) ) )

2. 检查两个列表是否有任何匹配项:

if set( list1 ).intersection( set( list2 ) ):
    print( "These lists contain some identical elements." )
else:
    print( "These lists do NOT contain identical elements." )

3. 合并列表中的元素并将结果作为一个新列表:

list1=[1,2,3,4,5]
list2 = [ int( ''.join(str(x) for x in list1) ) ]
print( list2 )
# Output: [12345]

如果希望合并的结果是一个字符串而不是一个整数,可以去掉int强制转换:

list1=[1,2,3,4,5]
list2 = [ ''.join(str(x) for x in list1) ]
print( list2 )

注意:在StackOverflow上,通常建议每个帖子只提出一个问题,并展示你已经尝试过的代码。

感谢原作者的回答,这个方法对我的代码很有帮助。

0
0 Comments

Python 3中如何检查两个不同列表中的相同项?

在Python中,您可以使用set从两个不同列表中获取相似项。这将给出在两个不同列表中相同的值。

>>> a=[1,2,3]
>>> b=[2,3,4]
>>> set(a) & set(b)
{2, 3}
>>> 

要以列表格式获得此输出,只需键入以下内容

>>> list(set(a) & set(b))
    [2, 3]

您可以使用list("123")命令从字符串值创建列表

>>> a="123"
>>> list(a)
['1', '2', '3']
>>> 

感谢您的帮助,如果我想使用IF和ELSE来实现如下操作:list1=[6,7,8,9,10],list2=[1,2,3,4,5],然后从用户那里获取输入,如x=int(input('enter your age :')),然后如果用户输入的数字在我的list1中,则打印'you are older than me'。

这里您的评论并不是完全清楚,尽管看起来像一个全新的问题。在StackOverflow上,您应该将每个问题独立地发布为一个新问题,这样在未来人们可以仅搜索该问题。话虽如此,您是否需要以下内容:

list1 = [10,11,15,17,20,37]

user_age = int(input('enter your age :') )

if user_age in list1:

print( "There is at least one other person this age." )

else:

list1.append( user_age )

print( "You are the first person of this age!" )

0