En Python, vous pouvez programmer une fonction pour supprimer les doublons d'une séquence en utilisant plusieurs méthodes , mais en fonction de ce genre de types de données une séquence contient , une méthode peut être plus rapide que l'autre, mais peut fonctionne pas aussi souvent. Par exemple, vous pouvez programmer une fonction qui utilise un dictionnaire avec une collection de clés uniques pour vérifier les doublons rapidement , mais il peut aussi ne pas fonctionner. D'autre part, vous pouvez également programmer une fonction récursive qui vérifie chaque élément d'une séquence à l'encontre des éléments d'une autre séquence temporaire. Cela fonctionne toujours à supprimer les doublons , mais prend beaucoup plus de temps . Instructions
1
Ouvrez le shell Python ou ligne de commande
2
Tapez la commande suivante : .
Def removeDuplicatesOne ( myseq ) :
< p > tempSeq = {}
essayer :
pour x dans myseq :
tempSeq [x ] = 1
exception TypeError :
< p > del tempSeq
autre : Photos tempSeq.keys de retour
( )
N'oubliez pas de tiret correctement pour éviter une erreur de syntaxe . Ceci définit une fonction et accepte une séquence comme un paramètre . Il utilise un dictionnaire pour vérifier la séquence prévue à la fonction de doublons et les magasins membres non - double dans une séquence temporaire, puis renvoie une séquence triée
3 Type de
ce qui suit: . < Br >
def removeDuplicatesTwo ( myseq ) :
tempSeq = []
pour x dans myseq :
si x n'est pas dans tempSeq :
tempSeq . append ( x )
retour tempSeq
Ceci définit une fonction qui utilise un algorithme plus lent que le précédent, mais fonctionne plus souvent ainsi . Il crée une séquence temporaire, puis cycles simplement à travers chaque élément de la séquence existante et vérifie pour voir si cet élément existe dans une temporaire. Dans le cas contraire , ce point est ajouté à la séquence temporaire . Si c'est le cas , il ignore ce recommence alors avec l'élément suivant. Elle retourne une séquence non triés
4
Tapez la commande suivante : .
RemoveDuplicatesOne ( [ 4,2,5,1,6,3,4,2,6,4,2 , 6 ] ) :
la séquence est passée à la fonction et les doublons sont supprimés . Python retourne la séquence suivante : . [ 1,2,3,4,5,6 ]
5
Tapez la commande suivante :
removeDuplicatesTwo ( [ 4,2,5,1 , 6,3,4,2,6,4,2,6 ] ) :
la séquence est passée à la fonction et les doublons sont supprimés . Python retourne la séquence suivante : . [ 4,2,5,1,6,3 ]