Python: print без символа новой строки

Автор: | 28/12/2014

PythonВозьмём такой пример:

$ cat no_new_line.py
#!/usr/bin/env python

list = ('a', 'b', 'c')

for i in list:
    print(i)

Который ведет на экран каждый элемент с новой строки:

$ ./no_new_line.py
a
b
c

Что бы вывести элементы списка на экран один за другим – можно использовать несколько способов.

Первый – rstrip:

        for i in text:
            print(i.rstrip('n'))

Второй – символ “,“:

for i in list:
     print(i),

Результат:

$ ./no_new_line.py
a b c

Ещё один способ – с помощью __future__ print_function.

Для этого перед импортами добавляем:

#!/usr/bin/env python

from __future__ import print_function

list = ('a', 'b', 'c')

А в цикле – используем аргумент end для функции print():

for i in list:
     print(i, end=' ')

Результат:

$ ./no_new_line.py
a b c

Стоит обратить внимание ещё и на аргумент sep (separator):

$ cat no_new_line.py
#!/usr/bin/env python

from __future__ import print_function

print('one', 'two', 'three', sep='--*--')

Результат:

$ ./no_new_line.py
one--*--two--*--three