Python-Programm - Fragen zum Feinschliff

  • Ersteller Ersteller Blokkmonsta93
  • Erstellt am Erstellt am
B

Blokkmonsta93

Gast
Hey, ich finde einfach nicht heraus, warum die 212 weiter eingerückt ist, als die restlichen Zahlen, obwohl die Einrückung für alle gleichermaßen gilt. Außerdem weiß ich nicht, wie ich die Nachkommastelle wegbekommen kann. Mit round(0) hat es nicht funktioniert.

Siehe Anhang

1615586400926.png
 
denke mal, da ist ein Tabulator (/t) zuviel. du musst eine bedingung einbauen, dass er bei celsius >99 nur 2 x /t im print macht.
gruß t.
 
print("Celsius", "\tFahrenheit")

for g in range(0, 91, 10):
print(g, "\t\t\t", g*9/5+32)
for g in range(100, 101, 10):
print(g, "\t\t", g*9/5+32)

funktioniert
 
  • Gefällt mir
Reaktionen: Thomy94
Ich werde eure Hinweise morgen mal austesten. Ich hab inzwischen Kopfweh. ^^

Aber schon mal vielen Dank für die schnellen Antworten! :)
 
Verlain schrieb:
print("Celsius", "\tFahrenheit")

for g in range(0, 91, 10):
print(g, "\t\t\t", g*9/5+32)
for g in range(100, 101, 10):
print(g, "\t\t", g*9/5+32)

funktioniert
beim letzten print fehlt ein \t:
print("Celsius", "\tFahrenheit")

for g in range(0, 91, 10):
print(g, "\t\t\t", g*9/5+32)
for g in range(100, 101, 10):
print(g, "\t\t\t", g*9/5+32)

Ergebnis:
1615588958042.png
 
Die Einrückung bei "100" kommt von dem einen Zeichen mehr gegen über den anderen Zahlen.
Beide deiner Probleme bekommst du mit Formatierung in den Griff:
Python:
print('%3d\t\t%d' % (g, g*9/5+32))
Ab Python 3.6 geht auch:
Python:
print('{:3d}\t\t{:3d}' % (g, g*9/5+32))
Python:
print("{:3d}\t\t{:3.0f}".format(g, g*9/5+32))

Die etwas kryptische Referenz findest du hier:
https://docs.python.org/3/library/string.html
 
Zuletzt bearbeitet:
Ein Tab springt immer zur nächsten durch die konfigurierbare Tab-Breite teilbaren Position (0-basiert).

Die Tab-Breite ist offensichtlich 4.

Zwischen den Argumenten von "print" wird ein Leerzeichen ausgegeben, d.h. vor den drei Tabs bei 100 insgesamt vier Zeichen. Die drei Tabs springen also von Position 4 zu 8, 12, 16. Bei zweistelligen Zahlen springen sie von 3 zu 4, 8, 12.

Bei einer Tab-Breite von 8 würde es passen, anders als die Variante von Verlain, die nur bei einer Tab-Breite von 4 passt.
 
  • Gefällt mir
Reaktionen: BeBur
Erledigt
 
Zuletzt bearbeitet von einem Moderator: (Fehler gefunden)
Zurück
Oben