Fizzbuzz in Python (in einer Zeile)

Ich hatte die Gelegenheit, Python-Anfängern die Grundlagen beizubringen, und ich ließ sie dies tun, um mich an den Einschlussausdruck im Fizzbuzz-Problem zu gewöhnen. Diesmal habe ich beschlossen, es von 1 bis 30 zu versuchen. Die Umgebung ist Python 3.5.0

gewöhnliche

fizzbuzz.py


for n in range(1, 31): 
	if n % 3 == 0 and n % 5 == 0:
		print("FizzBuzz")
	elif n % 3 == 0:
		print("Fizz")
	elif n % 5 == 0:
		print("Buzz")
	else:
		print(n)

Beispiel für eine einzeilige Bindung (3 und 5 sind ärgerlich, setzen Sie sie also auf 15)

fizzbuzz2.py


["FizzBuzz" if n % 15 == 0 else "Fizz" if n % 3 == 0 else "Buzz" if n % 5 == 0 else n for n in range(1,31)]

Dies ist etwas verbessert, da nur eine Liste erstellt und nicht angezeigt wird

fizzbuzz3.py


print("\n".join(["FizzBuzz" if n % 15 == 0 else "Fizz" if n % 3 == 0 else "Buzz" if n % 5 == 0 else str(n) for n in range(1,31)]))

Die Länge einer Zeile ignoriert PEP8 so weit wie möglich. Wenn der Einschluss tatsächlich lang wird, sollten Sie die Zeile entsprechend unterbrechen.

FizzBuzz ist auch mit der Beschreibung in Shiracamus 'Kommentar möglich. Es ist sehr knifflig, aber es fühlt sich wie Pythons einzigartiger Schreibstil an. Wenn Sie das also auch sehen können

Recommended Posts

Fizzbuzz in Python (in einer Zeile)
FizzBuzz in Python
Segfo Python in einer Zeile
CGI Server (1) Python Edition in einer Zeile
Ein Liner in Python
Zerlegen Sie Befehlsargumente in einer Zeile in Python
[Python] Bool-Wertinversion in einer Zeile
Mach ein Janken-Spiel in einer Zeile (Python)
DMD in Python 1D
Versuchen Sie LINE Notify mit Python
Primzahlaufzählung in einer Zeile
Ich habe Line Benachrichtigung in Python versucht
[Einführung] Fügen Sie Zeilenumbrüche in Python 3 ein
Implementiert in 1 Minute! LINE Benachrichtigen in Python
Entschlüsseln Sie eine Codezeile in Python Lambda, Karte, Liste
Behandeln Sie mehrere Python-Versionen in einem Jupyter
Quadtree in Python --2
Python in der Optimierung
CURL in Python
[Python] [3D-Liniendiagramm] Mehrere Daten in einem Diagramm, Achsenwerte in Zeichen
FizzBuzz in Python3
Metaprogrammierung mit Python
Python 3.3 mit Anaconda
Geokodierung in Python
SendKeys in Python
Metaanalyse in Python
Unittest in Python
Gefaltetes Liniendiagramm und Skalierungslinie in Python
Epoche in Python
Zwietracht in Python
Deutsch in Python
DCI in Python
Quicksort in Python
nCr in Python
N-Gramm in Python
Programmieren mit Python
Lesen Sie die Datei Zeile für Zeile mit Python
Lesen Sie die Datei Zeile für Zeile mit Python
Plink in Python
Konstante in Python
LINE Heroku Python
Einzeiler webServer (mit CGI) in Python
SQLite in Python
Schritt AIC in Python
LINE-Bot [0] in Python
CSV in Python
Reverse Assembler mit Python
Reflexion in Python
Auf der Suche nach dem schnellsten FizzBuzz in Python
Konstante in Python
nCr in Python.
Format in Python
Scons in Python 3
Puyopuyo in Python
Python in Virtualenv
PPAP in Python
Quad-Tree in Python
Reflexion in Python
Chemie mit Python