Python print-Anweisung fügt neue Zeile-Zeichen, um Sie in Ihrer Ausgabe haben möchten. Ich denke, Sie möchten nur ein Leerzeichen am Ende der äußeren Schleife und ein neues Zeilenzeichen am Ende der äußeren Schleife haben.
können Sie dies erreichen, indem
print i * j, # note the comma at the end (!)
verwenden und nur das Hinzufügen eine neue Zeile am Ende des äußeren Loopblock:
print ''
Um mehr über das Hinter Koma zu lernen, und warum es funktioniert Schauen Sie hier: "How to print in Python without newline or space?". Beachten Sie, dass es anders in Python funktioniert 3.
Der endgültige Code sollte wie folgt aussehen:
x=range(1,11)
y=range(1,11)
for i in x:
for j in y:
print i*j,
print ''
Sie können auch aussehen ‚\ t‘ Sonderzeichen, die erlauben würden Sie besser Formatierung (auch diese alte zu erhalten Ressource ist gut genug: https://docs.python.org/2.0/ref/strings.html)
können Sie über Listenverständnis lesen und solche Listen drucken. auch der 'pass' ist nutzlos. – Julien
@JulienBernu: Das OP lernt gerade über grundlegende 'for' Schleifen. Sie sollten sie beherrschen, bevor sie zu einer fortgeschritteneren Syntax wie Listenergänzungen übergehen. –
Sicher, 'r = Bereich (1,11); print '\ n'.join ([' '. Join (['% 4s '% (i * j) für i in r]) für j in r]) 'macht den Trick, aber es ist nicht gerade einfach zu lesen. :) Und es ist total unhilflich für jemanden, der gerade anfängt zu programmieren. –