Imprimir declaraciones sin nuevas líneas en python?

Me preguntaba si hay una manera de imprimir elementos sin nuevas líneas, como

x=['.','.','.','.','.','.'] for i in x: print i 

y eso se imprimiría ........ lugar de lo que normalmente se imprimiría lo que sería

 . . . . . . . . 

¡Gracias!

Esto se puede hacer fácilmente con la función print () con Python 3 .

 for i in x: print(i, end="") # substitute the null-string in place of newline 

Te regalaré

 ...... 

En Python v2 puedes usar la función print() incluyendo:

 from __future__ import print_function 

como la primera statement en su archivo fuente.

Como los documentos de impresión () indican:

 Old: print x, # Trailing comma suppresses newline New: print(x, end=" ") # Appends a space instead of a newline 

Tenga en cuenta que esto es similar a una pregunta reciente que respondí ( https://stackoverflow.com/a/12102758/1209279 ) que contiene información adicional acerca de la función print() si tiene curiosidad.

 import sys for i in x: sys.stdout.write(i) 

o

 print ''.join(x) 

Me sorprendió que nadie haya mencionado el método pre-Python3 para suprimir la nueva línea: una coma al final.

 for i in x: print i, print # For a single newline to end the line 

Esto inserta espacios antes de ciertos caracteres, como se explica aquí .

Como se mencionó en las otras respuestas, puede imprimir con sys.stdout.write o usar una coma al final de la impresión para hacer el espacio, pero otra forma de imprimir una lista con el separador que desee es una combinación:

 print "".join(['.','.','.']) # ... print "foo".join(['.','.','.']) #.foo.foo. 

Para Python3:

 for i in x: print(i,end="")