Zufallsgenerierter String

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
7crystal7
User
Beiträge: 46
Registriert: Freitag 26. Mai 2006, 18:50

Halo Leute,

ich möchte einen zufallsgenerierten String erzeugen der

1. 8 Zeichen lang ist
2. Gruß, Klein Buchstaben und Zahlen beinhalten.

z.B. sowas: 8Oc5fNXQ , ZwHf4DhG

Könnt ihr mir helfen wie ich das anstelle. Keine Sonderzeichen!

Danke
Babsi
BlackJack

Erstelle eine Zeichenkette mit den gewünschten Zeichen. Das `string` Modul enthält einige nützliche Konstanten dafür. Und dann wählst Du einfach 8 zufällige Zeichen daraus aus. Zufallszahlen und mehr gibt's im `random` Modul.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Hi Babsi!

Code: Alles auswählen

>>> import string
>>> import random
>>> randstr = ""
>>> source = string.ascii_letters + "1234567890"
>>> source
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890'
>>> for i in range(8):
...     randstr += random.choice(source)
...     
>>> print randstr
Np9yik24
>>> 
lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
7crystal7
User
Beiträge: 46
Registriert: Freitag 26. Mai 2006, 18:50

danke euch!!

:D
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:


GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!

Möchte auch meinen Senf dazu geben :)

Code: Alles auswählen

import string
import random

source = string.letters + string.digits
print "".join( random.sample( source, 8 ) )
EDIT: Ok, random.sample() macht nicht das was hier gewünscht ist, aber trotzdem ... äh ... mist!

Gruß, mawe
BlackJack

Es widerspricht aber auch nicht den Anforderungen, dass ein Zeichen nicht mehrfach vorkommen kann war nicht verboten. :-)
Antworten