Pourquoi suis-je incapable d'effectuer cette opération? J'ai ci-dessous 2 listes, imbriquées et de taille inégale. J'ai appris que je dois convertir des listes de jeux (HASHABLE), puis effectuer la comparaison, mais je ne comprends pas la sortie de la comparaison (comme obtenir l'élément commun) J'ai essayé ci-dessous les méthodesComparaison de listes inégales imbriquées
list1 = [[u'i2_instance_floating_ip_association'], [u'i1_v1_instance_volume_attach']]
list2 = [[u'i2_instance_floating_ip_association', u'i2_v1_instance_volume_attach'], [u'i1_instance_floating_ip_association', u'i1_v1_instance_volume_attach']]
list1 = map(tuple, list1)
list2 = map(tuple, list2)
print(set(list1) & set(list2))
donne une sortie set()
ou
for item in list1:
if item in list2:
print(item)
ne donne rien
fin = [i for i in list1 if i in list2]
print("fin", fin)
donne fin []
Je reçois la sortie en utilisant votre méthode. Je pensais que traverser comme [i for i dans list1 si je dans list2] aurait dû traverser tous les éléments. –
Juste ajouter quelques impressions à la version de boucle pour voir ce que les éléments que vous avez réellement ressemblent. –