Existe-t-il un idiome pour obtenir une clé arbitraire, une paire de valeurs d'un dictionnaire sans les supprimer? (P3K)version non destructive de pop() pour un dictionnaire
EDIT:
Désolé pour le libellé confus. J'ai utilisé le mot arbitraire dans le sens où je me fous de ce que je reçois. C'est différent du hasard, où je me soucie de ce que je reçois (c'est-à-dire, j'ai besoin que les probabilités de chaque élément soit choisie la même chose).
Et je n'ai pas de clé à utiliser; si je le faisais, je penserais que ce serait dans la catégorie RTFM et ne mériterait pas une réponse sur SO.
EDIT:
Malheureusement, dans P3K, .items()
retourne un objet dict_items
, contrairement à Python 2 qui a retourné une iterator:
ActivePython 3.1.2.4 (ActiveState Software Inc.) based on
Python 3.1.2 (r312:79147, Sep 14 2010, 22:00:46) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> d = {1:2}
>>> k,v = next(d.items())
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: dict_items object is not an iterator
Voulez-vous dire une version non destructive de '.popitem()'? – kennytm
Que voulez-vous dire par «arbitraire»? Le ferez-vous plus d'une fois, et si oui, devrait-il être différent à chaque fois? – martineau
Je peux le faire plus d'une fois; mais je vais parfaitement bien avoir la même valeur ou une valeur différente. – max