2015-02-05 3 views
1

Я знаю, как использовать end="" с функцией print в Python 3.0 для подавления перевода строки, но как я могу подавить перевод строки при использовании метода str.format?Как подавить Linefeed Использование str.format

print("Hello", end=",") # Works 
print(" Hola") 
print("{}".format("")) 
print("{}".format("Hello", end = ",")) # Doesn't work 
print("{}".format(" Hola")) 
+0

Вы можете предоставить более подробную информацию по этому вопросу (и, возможно, более подробно в каждом из примеров), чтобы получить полезные ответы. – Stratus3D

ответ

5

новой строки добавляется функцией print, а не str.format. Из docs:

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

objects Печать в текстовый поток file, разделенных sep и последующим end.

Обратите внимание, что параметр end по умолчанию равен '\n' (новая строка). Нет пути для str.format, чтобы удалить эту новую строку, потому что ее нет до после отформатированная строка дается print.

Вам нужно будет использовать end="":

print("{}".format("Hello"), end="") 
+0

Превосходно. Вы бы не поверили, сколько способов я пробовал это, прежде чем подвергать себя пресловутым модераторам здесь. Это может быть единственная комбинация, которую я не пробовал. Спасибо. – JayJay123

Смежные вопросы