2009-06-30 7 views
0

Ich lehre mich Python. Ich dachte an kleine Programme und kam auf die Idee, einen Keno-Zahlengenerator zu machen. Für alle, die es nicht wissen, können Sie 4-12 Nummern im Bereich von 1-80 auswählen. So fragt der erste Teil, wie viele Zahlen, der zweite erzeugt sie. Ich kam mitprint-Anweisung in for-Schleife führt nur einmal

x = raw_input('How many numbers do you want to play?') 
for i in x: 
    random.randrange(1,81) 
print i 

Welche nicht funktioniert, druckt x. Also frage ich mich, wie ich das am besten mache. Eine random.randange Funktion erstellen? Und wie nenne ich es x-mal basierend auf Benutzereingaben.

Wie immer, vielen Dank im Voraus für die Hilfe

+0

das "für i in x:" müsste über etwas verwendet werden, das iterierbar ist. – Deinumite

+0

Welches Buch oder welche Webseite benutzen Sie? Es ist nicht sehr gut. –

Antwort

5

Dies sollte das tun, was Sie wollen:

x = raw_input('How many numbers do you want to play?') 
for i in xrange(int(x)): 
    print random.randrange(1,81) 

In Python Einzug Angelegenheiten. Es ist die Art, wie es weiß, wenn Sie sich in einem bestimmten Codeblock befinden. Also verwenden wir im Grunde die xrange Funktion, um einen Bereich zu erstellen, der durchlaufen wird (wir rufen int auf x, weil es eine ganze Zahl erwartet, während raw_input eine Zeichenfolge zurückgibt). Wir drucken dann den Rückgabewert randrange innerhalb des For-Blocks.

+0

Funktioniert! Danke, schau in diesen X-Bereich. – Kevin

+0

Kevin: Es gibt andere, ähnliche Funktionen, die Sie vielleicht interessant finden. Siehe Bereich, Aufzählung, zip. – alecwh