144 votes

Comment puis-je générer un identifiant unique en Python ?

Je dois générer un identifiant unique basé sur une valeur aléatoire.

156voto

Michael Aaron Safyan Points 45071

Peut-être uuid.uuid4() pourrait faire l'affaire. Voir uuid pour plus d'informations.

109voto

DreadPirateShawn Points 3801

Vous pouvez utiliser les fonctions UUID de Python :

21.15. uuid - Objets UUID selon la RFC 4122

eg :

import uuid
print uuid.uuid4()

7d529dd4-548b-4258-aa8e-23e34dc8d43d

22voto

IfLoop Points 59461

unique et aléatoire sont mutuellement exclusifs. peut-être voulez-vous ceci ?

import random
def uniqueid():
    seed = random.getrandbits(32)
    while True:
       yield seed
       seed += 1

Utilisation :

unique_sequence = uniqueid()
id1 = unique_sequence()
id2 = unique_sequence()
id3 = unique_sequence()
ids = [unique_sequence() for dummy in range(1000)]

aucun identifiant retourné n'est le même (Unique) et ceci est basé sur une valeur de semence aléatoire.

13voto

chaos Points 69029

Voilà :

import os
id = os.urandom(32)

3voto

zenazn Points 8373

Peut-être que le uuid module ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X