当前位置:首页 >> 脚本专栏

python判断两个序列的成员是否一样的实例代码

目的:判断两个序列的成员是否一样,如:list1 = [1, 2],list2 = [2, 1],则两个序列的成员是一样的。

实现:借助集合set()的性质实现。

代码如下:

if __name__ == "__main__":
  l = [[2, 1], [3, 4]]
  for i in l:
    print (i)
    tmp = set(i)
    print (tmp)
    if tmp == {1, 2}:
      print ("yes")
    else:
      print ('no')

输出结果:

[2, 1]
{1, 2}
yes
[3, 4]
{3, 4}
no

知识点扩展:

python 怎样判断一个序列是否在另一个序列中

你的需求描述的不是太清晰,如果你时想判断 list1 = [2, 3, 3, 4],是否为 list2 = [1, 2, 3, 3, 4, 5] 的子序列,首先保证两个列表元素类型相同,然后写循环:

list1 = [2, 3, 3, 4]
list2 = [1, 2, 3, 3, 4, 5]
flag = False
for i in range(len(list2) - len(list1) + 1):
  if list2[i: i+len(list1)] == list1:
    flag = True
    break
print(flag)