0
votes

Obtenir le premier tuple d'un ensemble

J'ai cet ensemble:

optimal = {(0,1), (2,1), (1,1)}

Je veux obtenir le tout premier tuple de l'ensemble.

La sortie souhaitée est la suivante: (0,1)

Comment puis-je faire cela?


3 commentaires

liste (optimale) [0]


Cela ne retournera pas toujours ce que vous voulez. Les ensembles ne sont pas commandés. Essayez d'imprimer plusieurs fois.


Il n'y a rien de tel que le "premier" tuple d'un ensemble. L'itérateur défini produira les valeurs de certains ordres arbitraires que vous ne pouvez pas nécessairement prédire.


3 Réponses :


-2
votes

Utilisez optimal.pop () Il renvoie la première valeur de l'ensemble.


1 commentaires

POP () seulement supprime un tuple Supprimer de l'ensemble



0
votes

Les ensembles n'ont pas de commande inhérente sur leurs éléments (par défaut, au moins).

Vous devez donc faire deux choses:

  1. transformez-le en quelque chose qui a une commande - as_list = liste (optimale)
  2. Trier cette liste - as_list.sort ()

    Maintenant, les éléments sont dans certains ordre, qui par défaut est le commandement naturel des éléments. Pour une liste de tuples, cela signifie as_list [0] est maintenant (0,1)

    Consultez la documentation pour Tri dans Python pour apprendre à trier par d'autres critères.

    NB réponses qui disent simplement convertir à la liste et obtenir l'élément [0] ignorer le fait que l'ensemble ne donne pas ses éléments à la liste d'une commande prévisible.


4 commentaires

Le tri est probablement trop exclu. "Premier" implique "moins" selon certains critères, que min peut probablement gérer. Min peut également être appliqué à un appareil arbitraire, y compris un défini . (En outre, trié peut également renvoyer une liste donnée à un iérien arbitraire.)


@cheppner Seulement si nous savons que l'ordre naturel est adéquat, Moerover mon point sur la manière dont la liste est réellement construite à partir de l'ensemble tient toujours. Nous ne savons pas pourquoi (0,1) est spécial pour l'OP.


C'est pourquoi j'ai dit "selon certains critères"; Vous pouvez spécifier une touche sur min ou trié pour mapper les tuples de manière à préserver la commande de la commande souhaitée avec la commande souhaitée.


@cheppner Nous sommes d'accord - D'où ma direction à la documentation pour plus de tri, dans laquelle clé est important.



0
votes

est aucun premier élément d'un ensemble () .

Si vous voulez la première valeur d'un tableau, il y a eu un motif, une boucle , ou méthode qui vous a obtenu l'ensemble ou, vous avez fait manuellement l'ensemble des éléments.
Dans les deux cas, ce dont vous avez besoin est une liste .
Si l'ensemble a été utilisé pour vous débarrasser des doublons, vous pouvez faire la même chose avec: xxx


0 commentaires