


Wie generiert man in Python Zufallszahlen, deren Summe einen bestimmten Wert ergibt?
Generieren von Zufallszahlen, die in Python einen vordefinierten Wert ergeben
Die Herausforderung besteht darin, eine Reihe von Pseudozufallszahlen zu generieren, die sich kollektiv summieren bis zu einem bestimmten Wert. Konkret möchte der Benutzer vier Zahlen generieren, die zusammen 40 ergeben.
Standardlösung
Die Standardlösung ist sowohl einheitlich als auch an unterschiedliche Zielsummen anpassbar. Es verwendet Zufallsstichproben, um eine Folge von Ganzzahlen auszuwählen, die die angegebenen Einschränkungen erfüllen:
<code class="python">import random def constrained_sum_sample_pos(n, total): """Return a randomly chosen list of n positive integers summing to total. Each such list is equally likely to occur.""" dividers = sorted(random.sample(range(1, total), n - 1)) return [a - b for a, b in zip(dividers + [total], [0] + dividers)]</code>
Nichtnegative Ganzzahllösung
Für Situationen, in denen nichtnegative Ganzzahlen bevorzugt werden, eine einfache Die Transformation kann auf die Standardlösung angewendet werden:
<code class="python">def constrained_sum_sample_nonneg(n, total): """Return a randomly chosen list of n nonnegative integers summing to total. Each such list is equally likely to occur.""" return [x - 1 for x in constrained_sum_sample_pos(n, total + n)]</code>
Grafische Erläuterung
Um den Generierungsprozess zu veranschaulichen, betrachten Sie das Beispiel des Erhaltens von vier positiven ganzen Zahlen, die mit 10 summiert werden constrained_sum_sample_pos(4, 10).
0 1 2 3 4 5 6 7 8 9 10 # The universe. | | # Place fixed dividers at 0, 10. | | | | | # Add 4 - 1 randomly chosen dividers in [1, 9] a b c d # Compute the 4 differences: 2 3 4 1
Fazit
Die Standardlösung bietet einen zuverlässigen und einheitlichen Ansatz zur Generierung von Zufallszahlen mit einer vordefinierten Summe. Es kann für verschiedene Summenwerte angepasst und erweitert werden, um nichtnegative ganze Zahlen zu verarbeiten.
Das obige ist der detaillierte Inhalt vonWie generiert man in Python Zufallszahlen, deren Summe einen bestimmten Wert ergibt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

So verwenden Sie Python, um die ZiPF -Verteilung einer Textdatei zu finden

So herunterladen Sie Dateien in Python

Wie benutze ich eine schöne Suppe, um HTML zu analysieren?

Wie man mit PDF -Dokumenten mit Python arbeitet

Wie kann man mit Redis in Django -Anwendungen zwischenstrichen

Einführung des natürlichen Sprach -Toolkits (NLTK)

Wie führe ich ein tiefes Lernen mit Tensorflow oder Pytorch durch?
