Wie kann ich in Python3 eine randint einer variablen zuweisen?

3 Antworten

r = randint Und mit if r abfragen ob 1,2 oder 3 ist?

InaMoese 
Fragesteller
 17.02.2017, 11:09

Da fehlt mir leider noch die Verknüpfung zu a,b,c... Aber danke, das war schon ein biscchen hilfreich.

0
ralphdieter  17.02.2017, 13:20
@InaMoese

Mach doch ein Array und pick dir ein zufälliges Element heraus::

("?", "Hallo", "Tschüss", "Guten Tag")[randint(1,3)]
1

Also

Methode 1:

from random import randint
x = randint(1, 3)
a = "Hallo"
b = "Tschüß"
c = "Guten Tag"
if x == 1: print(a)
elif x == 2: print(b)
elif x == 3: print(c)

Oder, die einfachere Variante:

abc = ["Hallo", "Tschüß", "Guten Tag"]
print(abc[randint(0, 2)])

Oder etwa wirklich mit 1,3:

abc = ["", "Hallo", "Tschüß", "Guten Tag"]
print(abc[randint(1,3)])

Oder, aber halt nicht mit randint:

from random import choice
abc=["Hallo", "Tschüß", "Guten Tag"]
print(choice(abc))
Woher ich das weiß:Hobby

In etwa so:

from random import randint

a = "hallo"
b = "tschüss"
c = "Guten Tag"

r = randint (1, 3)

if r == 1: print a
elif r == 2: print b
elif r == 3: print c

Oder etwas "Pythonmäßiger":

from random import randint

print ["hallo", "tschüss", "Guten Tag"][randint(0,2)]
Tbear44  26.02.2020, 08:35

Die Pythonmäßigere Variante funktioniert nicht. Es muss heißen

print( ["hallo", "tschüss", "guten tag"][randint(0,2] )
0
Isendrak  26.02.2020, 09:48
@Tbear44

Heutzutage ja.

"Damals", zu Zeiten von Python 2.7 (ist dir aufgefallen, dass die Antwort 4 Jahre alt ist?) war das korrekt.

0