Testen mit Zufallszahlen in Python

Fortsetzung des wissenschaftlichen Rechnens mit Python

Ich lerne Python ständig bei freeCodeCamp. In Vorheriger Artikel werden wir diesmal * Wahrscheinlichkeitsrechner * herausfordern.

Frage 5: Wahrscheinlichkeitsrechner

Dieses Problem ist ein Problem, das als Wahrscheinlichkeitsproblem gelöst zu sein scheint, als ich Student war. Finden Sie die Wahrscheinlichkeit, mehrere farbige Kugeln in einem Hut (einer Tasche) herauszunehmen. Speziell,

--Eine Hat-Klasse erstellen

Persönlicher Punkt: Testen mit Zufallszahlen

Dieses Mal wird der Ball zufällig aus dem Hut genommen. Es funktioniert nicht, wenn ich einen Test wie unten schreiben möchte.

 1 import unittest
 2 
 3 class UnitTests(unittest.TestCase):
 4     #Wenn Sie 2 Bälle aus einem Hut mit 5 roten und 2 blauen Bällen herausnehmen, gibt es 1 roten und 1 blauen Ball.
 5     def test_hat_draw(self):
 6        hat = prob_calculator.Hat(red=5,blue=2)
 7        actual = hat.draw(2)
 8        expected = ['blue', 'red']
 9        self.assertEqual(actual, expected, 'Expected hat draw to return two random items from hat contents.')
10        actual = len(hat.contents)
11        expected = 5
12        self.assertEqual(actual, expected, 'Expected hat draw to reduce number of items in contents.')

Wenn Sie zwei Bälle in der 7. Linie zeichnen, verwendet die interne Implementierung Zufallszahlen, sodass nicht immer ein roter und ein blauer Ball vorhanden sind. Verwenden Sie "Random Seed", um dies zu lösen.


import random

balls = ['red', 'red', 'red', 'red', 'red', 'blue', 'blue']

random.sample(balls, k=2)
# ['red', 'red']
random.sample(balls, k=2)
# ['red', 'blue']

random.seed(0)
random.sample(balls, k=2)
# ['blue', 'red']
random.seed(0)
random.sample(balls, k=2)
# ['blue', 'red']

Wenn Sie den Startwert der Zufallszahl auf diese Weise im Voraus festlegen, kann immer das gleiche Verhalten erzielt werden.

Schließlich

Wissenschaftliches Rechnen mit Python ist vorbei! Als nächstes beginne ich mit der Datenanalyse mit Python-Zertifizierung!

Recommended Posts

Testen mit Zufallszahlen in Python
Zufälliger Spaziergang in Python
Primzahl in Python
Testmethoden, die zufällige Werte in Python zurückgeben
Schaben mit Selen in Python
Betreiben Sie LibreOffice mit Python
Schaben mit Chromedriver in Python
Debuggen mit pdb in Python
Automatisieren Sie Python-Tests mit CircleCI
Beurteilung von Primzahlen mit Python
Umgang mit Sounds in Python
Scraping mit Selen in Python
Verwenden Sie Random Forest mit Python
Scraping mit Tor in Python
Tweet mit Bild in Python
Kombiniert mit Ordnungszahl in Python
Gewichtete zufällige Auswahl in Python
Behandeln Sie komplexe Zahlen in Python
[Python] Holen Sie sich die Zahlen im Diagramm mit OCR
Zahlenerkennung in Bildern mit Python
Spielen Sie handschriftliche Zahlen mit Python Part 1
GOTO in Python mit erhabenem Text 3
Arbeiten mit LibreOffice in Python: Importieren
[Kleine Geschichte] [Python] Ersetzen Sie Zeichenfolgen in einem zweidimensionalen Array durch Zahlen
Scraping mit Selen in Python (Basic)
CSS-Analyse mit cssutils in Python
Zufallsgenerator für französische Zahlen mit Python
Numer0n mit Elementen, die mit Python erstellt wurden
Öffnen Sie UTF-8 mit Stückliste in Python
Verwenden Sie rospy mit virtualenv in Python3
Verwenden Sie Python in pyenv mit NeoVim
Heatmap mit Dendrogramm in Python + Matplotlib
Lesen Sie Dateien parallel zu Python
Passwort für Lehrbuch mit Python generieren
Das Gesetz der Zahlen in Python
Verwenden Sie OpenCV mit Python 3 in Window
Bis zum Umgang mit Python in Atom
Erstellen Sie eine zufällige Zeichenfolge in Python
Beginnen Sie mit Python mit Blender
Arbeiten mit DICOM-Bildern in Python
Holen Sie sich mit Python zusätzliche Daten zu LDAP
Spiralbuch in Python! Python mit einem Spiralbuch! (Kapitel 14 ~)
Versuchen Sie, sich mit Python bei qiita anzumelden
Stresstest mit Locust in Python geschrieben
Exklusive Steuerung mit Sperrdatei in Python
Geräteüberwachung durch On-Box Python von IOS-XE
Spielen Sie handschriftliche Zahlen mit Python Teil 2 (identifizieren)
[Python] So zeigen Sie Zufallszahlen an (Zufallsmodul)
Versuchen Sie, mit Binärdaten in Python zu arbeiten
Zeichnen Sie Nozomi Sasaki in Excel mit Python
Tipps zum Umgang mit Binärdateien in Python
Implementieren Sie gemeinsam statistische Hypothesentests in Python
Zeigen Sie Python 3 im Browser mit MAMP an
So arbeiten Sie mit BigQuery in Python
Trump-Klasse in Python (mit Vergleich)
Umgang mit "Jahren und Monaten" in Python
Verarbeiten Sie mehrere Listen mit for in Python