J'ai un format suivant TUPLE:
((624, 612), (625, 613), (626, 614), (627, 615), (628, 616), (629, 616), (630, 617))
6 Réponses :
Ceci est une approche utilisant sortie: strong> p> définir code>.
En supposant que l'entrée est déjà commandée par le premier élément et que vous ne vous souciez pas de faire quelques importer code> S pour faire le levage lourd pour vous:
output = [next(elements) for group, elements in itertools.groupby(inp, key=itemgetter(0))]
Vous pouvez utiliser dict.items () code> pour garder le dernier jeu d'instance:
Une excellente réponse, fonctionne même si l'entrée n'est pas commandée du tout (bien qu'elle dépend totalement de la manière dont dict (ierer_of_tuples) code> fonctionne)
Trié code> est un peu superflu ...
semble être un bon cas d'utilisation pour setingdefault () code>:
Utilisation de SET + LISTE COMPÉTENTION
[(624, 612), (625, 613), (626, 614), (627, 615), (628, 616), (629, 616), (630, 617)]
Vous pouvez convertir vos données en dict que vous ne pouvez inclure chaque touche, paire de valeur de la dict dans une liste: [(624, 612),
(625, 613),
(626, 614),
(627, 615),
(628, 616),
(629, 616),
(630, 631)]
L'entrée est-elle commandée par le premier élément et vous souciez-vous de l'ordre de la sortie?
@DeepSpaceThe la liste est commandée par premier élément et je ne me soucie pas de l'ordre de la liste après la manipulation
Ce n'est pas une liste mais c'est un tuple
@zamir j'ai essayé une recherche exhaustive. Ce pourrait être un tuple, tu as raison