Wie kann ich in Python3 eine randint einer variablen zuweisen?
Hallo, wie oben schon geschrieben würde ich gern Wissen wie ich einer Zufallszahl eine Variable zuweisen kann. Ich habe folgendes:
from random import randint
randint (1, 3)
a="hallo" b="tschüss" c="Guten Tag"
-Wenn jetzt zB eine 2 ausgespuckt wird möchte ich, dass python den der variable b zugeordneten string printet, also "tschüss". Wie kann ich den Zahlen 1,2,3 die Buchstaben a,b,c zuordnen?
Mit freundlichen Grüßen
3 Antworten
r = randint Und mit if r abfragen ob 1,2 oder 3 ist?
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)]
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
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
programmieren
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)]
Die Pythonmäßigere Variante funktioniert nicht. Es muss heißen
print( ["hallo", "tschüss", "guten tag"][randint(0,2] )
Da fehlt mir leider noch die Verknüpfung zu a,b,c... Aber danke, das war schon ein biscchen hilfreich.