So erhalten Sie eine Zufallszahl zwischen einem float-Bereich?
randrange(start, stop)
nimmt nur integer-Argumente. Also wie kann ich eine zufällige Zahl zwischen zwei float-Werte?
InformationsquelleAutor Mantis Toboggan | 2011-05-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden random.uniform(a, b):
Kurze Antwort: Ja. Längere Antwort: Wenn man sich die Dokumentation heißt es
Returns a random floating point number N such that a <= N <= b for a <= b and b <= N <= a for b < a
In anderen Worten, der AusgangN
können entweder gleich Eingangsa
undb
. In diesem Fall1.5
und1.9
.Gibt es eine andere Möglichkeit, dies zu tun, ohne mit der
.uniform
Funktion, sondern mit entweder.random
oderrandrange
?random.random() * (1.9 - 1.5) sollte es tun, auch wenn nach den Spezifikationen, das wird nie wieder genau
1.9
(sogar in der Theorie).es scheint
uniform(a, b)
implementierta + (b-a) * random()
und liefert eine Zufallszahl im Bereich [a, b) oder [a, b] je nach Rundung github.com/python/cpython/blob/...InformationsquelleAutor Yuri Stuken
random.uniform(a, b)
zu sein scheint, was Sie suchen. Aus den docs:Sehen hier.
InformationsquelleAutor garnertb
wenn Sie möchten, generieren einer Zufallszahl float mit N stellen rechts von Punkt, die Sie machen können :
das zweite argument ist die Anzahl der Nachkommastellen.
InformationsquelleAutor Baurin Leza