Przejdź do głównej zawartości

[Python] Jak pisać w Pythonie bez łamania linii [print, sys.stdout.write]

Instrukcja print standardowo przechodzi do nowej linii po jej użyciu. Obrazuje to poniższy przykład
1
2
for i in xrange(0,10): 
 print '.'
 
W wyniku działania powyższego skryptu otrzymamy 10 kropek (każda kropka w osobnej linii)

.
.
.
.
.
.
.
.
.
.

Aby wypisać kropki w jednej linii możemy dodać przecinek po instrukcji print
1
2
for i in xrange(0,10): 
 print '.',
 
Tym razem otrzymamy dziesięć kropek w jednej linii. Kropki są jednak oddzielone spacjami:
 
. . . . . . . . . . 

Aby pozbyć się spacji możemy skorzystać z biblioteki sys:

1
2
3
import sys
for i in xrange(0,10): 
 sys.stdout.write('.')

odpowiedź programu

..........

Jeżeli używasz Pythona w wersji 3 możesz wykorzystać poniższy przykład by pisać w jednej linii bez oddzielania spacjami:

1
print('.', end="")

Komentarze