[PYTHON] Die zweite Nacht der Runde mit für

http://d.hatena.ne.jp/shindannin/20111202/1322833089 Ja, die Referenz für heute Abend stammt aus dem obigen Link

Problem 1 Zähle FizzBuzz Wie viele ganze Zahlen von A nach B sind durch 3 oder 5 teilbar? Damit Das Nachdrucken des Beispiels der anderen Partei ist verwirrend, also nur für mich

Round-Robin mit for-Schleife.py


#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys
import io
import re
import math

####Vorbereitung der Speicherauslastung und Betriebszeitprüfung
from guppy import hpy
import time
h = hpy()
start = time.clock()
####Bis hierher
i=0
j=0

#ex1
for x in range(5, 11):
    if x%3==0 or x%5==0:
        i+=1

#ex2
for y in range(14, 17):
    if y%3==0 or y%5==0:
        j+=1
            

print 'ex1:'+str(i),'ex2:'+str(j)
####Speichernutzung und Betriebszeitausgabe
end = time.clock()
print h.heap()
print end-start

Ist der Bereich (5,11) zu intuitiv, um mit 5 von 10 auf 10 zu wechseln? Ich glaube nicht, aber das hat mir nicht gefallen, als ich in einer Weile eine ganze Zahl zwischen A und B geschrieben habe.

Wenn in while-Anweisung geschrieben.py


 i=0
a,b =5,10
#↓ wird angegeben, um zwischen A und B ausgeführt zu werden
while a<=b:
#Wenn es durch 3 oder 5 teilbar ist, addiere 1 zum Zähler
   if a%3==0 or a%5==0:
     i+=1
#Addieren Sie 1 durch a, bevor Sie zur Bedingungsbeurteilung der Ausführung des while-Teils zurückkehren
   a+=1

Hmmm, ich denke für ist in diesem Fall besser. Und als nächstes

Problem 2 Zähle FizzBuzz (2) x ist eine ganze Zahl von 0 bis X, y ist eine ganze Zahl von 0 bis Y und z ist eine ganze Zahl von 0 bis Z. Wie viele Kombinationen von (x, y, z) gibt es, in denen x + y * y + z * z * z * z durch 3 oder 5 teilbar ist?

Round-Robin mit mehreren for-Schleifen


#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys
import io
import re
import math

####Vorbereitung der Speicherauslastung und Betriebszeitprüfung
from guppy import hpy
import time
h = hpy()
start = time.clock()
####Bis hierher
i=0

for x in range(0,101):
    for y in range(0,101):
        for z in range(0,101):
            tmp=x + y*y + z*z*z*z
            if tmp%3==0 or tmp%5==0:
                i+=1
            else:
                pass

print i

            


####Speichernutzung und Betriebszeitausgabe
end = time.clock()
print h.heap()
print end-start

Vorerst habe ich es zwar geschrieben, aber das ist auch nicht schön. .. .. Die Ausführungsgeschwindigkeit betrug für die for-Anweisung etwa 0,61 Sekunden und für die while-Anweisung etwa 0,70 Sekunden.

Bei Verwendung während.py


#!/usr/bin/env python
# -*- coding:utf-8 -*-
import sys
import io
import re
import math

####Vorbereitung der Speicherauslastung und Betriebszeitprüfung
from guppy import hpy
import time
h = hpy()
start = time.clock()
####Bis hierher
i=0
x=y=z=0

while x<=100:
    while y<=100:
        while z<=100:
            tmp=x + y*y + z*z*z*z
            if tmp%3==0 or tmp%5==0:
                i+=1
            else:
                pass
            z+=1
        y+=1
        z=0
    x+=1
    y=0
print i


####Speichernutzung und Betriebszeitausgabe
end = time.clock()
print h.heap()
print end-start

Ich glaube, ich habe irgendwo anders gesehen: Pass ist unnötig, nutzlos und sollte nicht geschrieben werden, aber ich schreibe es oft. .. .. Wenn Sie während einmal beenden und dann erneut in einer Schleife zurückkehren, um die untergeordnete Anweisung while auszuführen, können Sie nach einer anderen Methode suchen, als dem Zähler beim Beenden 0 neu zuzuweisen. .. ..

from __future__ import print_function Wird ab morgen aufgenommen.

Das ist alles für heute Abend.

Recommended Posts

Die zweite Nacht der Runde mit für
Die dritte Nacht der Runde mit für
4. Nacht der Schleife mit für
Prognostizieren Sie die zweite Runde des Sommers 2016 mit scikit-learn
Fügen Sie Attribute von Klassenobjekten mit einer for-Anweisung hinzu
[Für Anfänger] Quantifizieren Sie die Ähnlichkeit von Sätzen mit TF-IDF
Die Geschichte, einen Standardtreiber für db mit Python zu erstellen.
Überprüfen Sie den Speicherschutz von Linux Kern mit Code für ARM
Aggregieren Sie die täglichen Treffer pro Sekunde aus den Webserver-Protokollen in Python
Fragen Sie mit dem Befehl bc nach Pi
Richten Sie die Größe der Farbleiste an der Matplotlib aus
Suchen Sie nach Dateien mit der angegebenen Erweiterung
Überprüfen Sie die Existenz der Datei mit Python
Pandas des Anfängers, vom Anfänger, für den Anfänger [Python]
Zählen Sie die Anzahl der Zeichen mit Echo
Ich habe die Geschwindigkeit der Listeneinschlussnotation für und während mit Python2.7 gemessen.
Holen Sie sich den Schlüssel für die Migration von JSON-Daten auf der zweiten Ebene mit Python
Die Geschichte des tiefen Lernens mit TPU
Hinweis: Bereiten Sie die Umgebung von CmdStanPy mit Docker vor
Die Geschichte, dass die Lernkosten von Python niedrig sind
Bereiten Sie die Ausführungsumgebung von Python3 mit Docker vor
Finden Sie das Differential zweiter Ordnung mit der automatischen Differenzierung von JAX
2016 Todai Mathematik mit Python gelöst
[Hinweis] Exportieren Sie das HTML der Site mit Python.
Belichtung des DCGAN-Modells für Cifar 10 mit Keras
Erhöhen Sie die Schriftgröße des Diagramms mit matplotlib
Berechnen Sie die Gesamtzahl der Kombinationen mit Python
Verwenden Sie vorerst Logger mit Python
Achten Sie auf den Rückgabewert von __len__
Ich habe vorerst mit Floydhub gespielt
Beseitigen Sie die Unannehmlichkeiten von QDock Widget mit PySide
Fordern Sie den Turm von Hanoi mit Wiederholungen + Stapel heraus
Bildverarbeitung? Die Geschichte, Python für zu starten
Schreiben Sie den Namen des Tags mit dem Namespace in lxml neu
Füllen Sie die Breite des Jupyter-Notizbuchs, um den Browser zu füllen
Ich möchte dem Anfang einer WAV-Datei 1 Sekunde lang Stille hinzufügen
Entleere den Inhalt der Redis-Datenbank mit Lua
Finden Sie den Tag nach Datum / Uhrzeit heraus
Die Basis der Graphentheorie mit Matplotlib-Animation
Code zum Überprüfen des Betriebs von Python Matplot lib
Checkliste, wie Sie vermeiden können, die Elemente des Numpy-Arrays mit for zu drehen
Visualisieren Sie das Verhalten des Sortieralgorithmus mit matplotlib
Konvertieren Sie den Zeichencode der Datei mit Python3
Richten Sie die Anzahl der Stichproben zwischen Datenklassen für maschinelles Lernen mit Python aus
[Python] Bestimmen Sie den Typ der Iris mit SVM
[Einführung in Python] So erhalten Sie den Datenindex mit der for-Anweisung
Der erste Schritt des maschinellen Lernens ~ Für diejenigen, die versuchen möchten, mit Python zu implementieren ~
Erstellen Sie einen API-Server, um den Betrieb der Front-Implementierung mit Python3 und Flask zu überprüfen
Zweite Hälfte des ersten Tages des Python-Studiums Versuchen Sie, die Twitter-API mit Bottle zu erreichen
Speichern Sie die Ausgabe der bedingten GAN für jede Klasse ~ Mit der cGAN-Implementierung von PyTorch ~
Hier finden Sie die Menge an freiem Speicher des Befehls free
Extrahieren Sie die Tabelle der Bilddateien mit OneDrive & Python
Ganz rechts Koordinaten des Etiketts mit tkinter erstellt
Die Geschichte des Stoppens des Produktionsdienstes mit dem Befehl hostname
Lerne Nim mit Python (ab Anfang des Jahres).
Berechnen Sie die Summe der eindeutigen Werte durch Pandas-Kreuztabellen
Spielen Sie mit der Implementierung der Pythonista 3-Benutzeroberfläche [Super Super Primer]