Petite question d'optimisation sur les tableaux
Bonjour à tous
Je suis en train de me poser une question bête dans un algo: j'ai besoin de ne traiter que les éléments d'un premier tableau qui se trouvent effectifs dans un second
Exemple
Code:
1 2
| tab1=["toto", "titi", "tata", "tutu"]
tab2=["tata", "truc", "autre", "toto"] |
Vu que seuls "tata" et "toto" sont présents dans tab2, je ne dois alors traiter que ceux-là dans tab1
J'ai 3 solutions possibles
Code:
1 2 3
| for x in tab1:
if x in tab2:
traitement de x (sur plusieurs lignes) |
Code:
1 2 3
| for x in tab1:
if x not in tab2: continue
traitement de x sur plusieurs lignes |
Code:
1 2
| for x in [y for y in tab1 if y in tab2]:
traitement de x sur plusieurs lignes |
A votre avis, quelle est la plus efficace des 3 ?