Seite 1 von 1

Totaler Anfänger: Zeilenumbruch im print

Verfasst: Dienstag 14. November 2017, 16:08
von MrBrightside
Guten Abend allerseits,

ich habe nach jahrerlange IT Abstinenz angefangen mir Python selber beizubringen.
Leider scheitere ich bereits deutlich früher als ich befürchtet habe.

Ich habe mich heute hingesetzt und will mal gucken ob ich mithilfe von Tutorials ein TikTakToe Spiel in der Konsole hinkriege.
Ich möchte gerne meine 9 Feldvariablen in 3 Reihen ausgeben.

1 2 3
4 5 6
7 8 9

Jetzt könnte ich natürlich hingehen und folgendes schreiben:

print(field1, field2, field3)
print(field4, field5, field6)
print(field7, field8, field9)

Ich denke doch aber das es da eine einfachere Möglichkeit gibt. Hier also die Frage: Wie kann ich im print einen Zeilenumbruch an der mir gewünschten Stelle erzwingen.
Unglaublicherweise habe ich bisher nichts dazu gefunden und denke mal, das die Frage zu dämlich ist um sie in einem Tutorial eigens zu erwähnen.

Wäre klasse wenn mir einer auf die Sprünge helfen könnte.

Vielen Dank schonmal ;)

Re: Totaler Anfänger: Zeilenumbruch im print

Verfasst: Dienstag 14. November 2017, 20:38
von anonym99
Hallo,

um einen Zeilenumbruch in einen String zu erreichen könntest du \n verwenden. Also am besten deine Werte in einen String umwandeln und an der gewünschten Stelle ein \n einfügen.

Code: Alles auswählen

print("{} {} {}\n{} {} {}\n{} {} {}".format(field1, field2, field3 , field4, field5, field6, field7, field8, field9))

Re: Totaler Anfänger: Zeilenumbruch im print

Verfasst: Dienstag 14. November 2017, 21:10
von narpfel
Moin,

Zusätzlich zu dem, was Epics gesagt hat: Durchnummerierte Namen sind quasi immer ein Zeichen dafür, dass man gerade etwas falsch macht und eigentlich eine Datenstruktur (in diesem Fall eine Liste) benutzen möchte. Mal als Beispiel eine zweidimensionale Liste:

Code: Alles auswählen

In [3]: field = [[0] * 3 for _ in range(3)]

In [4]: field
Out[4]: [[0, 0, 0], [0, 0, 0], [0, 0, 0]]

In [5]: print("\n".join(" ".join(str(cell) for cell in line) for line in field))
0 0 0
0 0 0
0 0 0

Re: Totaler Anfänger: Zeilenumbruch im print

Verfasst: Mittwoch 15. November 2017, 09:05
von MrBrightside
Sauber, herzlichen Dank ihr Beiden.

Da arbeite ich mich mal durch.

Re: Totaler Anfänger: Zeilenumbruch im print

Verfasst: Mittwoch 15. November 2017, 11:16
von /me
Damit man es sich besser merken kann: das "n" in \n steht für "new line", also neue Zeile.