Предположим, что моя строка:
' Hai Hello\nGood eve\n'
Как удалить '\n'
между ними и сделать строчную печать следующим образом:
Hai Hello Good eve
?
Предположим, что моя строка:
' Hai Hello\nGood eve\n'
Как удалить '\n'
между ними и сделать строчную печать следующим образом:
Hai Hello Good eve
?
Если вы не хотите, чтобы новая строка была в конце инструкции печати:
import sys
sys.stdout.write("text")
Вы можете использовать метод replace
:
>>> a = "1\n2"
>>> print a
1
2
>>> a = a.replace("\n", " ")
>>> print a
1 2
В Python 2.6:
print "Hello.",
print "This is on the same line"
В Python 3.0
print("Hello", end = " ")
print("This is on the same line")
Добавить запятую после "print":
print "Hai Hello",
print "Good eve",
Altho "print" отсутствует в Python 3.0
Пустой старый пост, но никто, похоже, не ответил на ваш вопрос. Два возможных ответа:
Во-первых, ваша строка на самом деле Hai Hello\\\\nGood eve\\\\n
печатает как Hai Hello\\nGood eve\\n
из-за экранированного \\\\
. Простое исправление будет mystring.replace("\\\\n","\\n")
(см. http://docs.python.org/reference/lexical_analysis.html#string-literals)
Или ваша строка не является строкой и, возможно, кортежем. У меня просто была аналогичная ошибка, когда я думал, что у меня есть строка, и никогда не замечал, как она печатается, поскольку это была длинная строка. Моя печаталась как:
( "Lorem ipsum dolor sit amet, consectetur adipiscing elit.\nEtiam orci felis, pulvinar id vehicleula nec, iaculis eget quam.\nNam sapien eros, hendrerit et oullamcorper nec, mattis at ipsum.\nНациональный нить, аликвит, не включенный в другие категории. fermentum non, faucibus vel odio.\nРазвитие ac odio vel metus condimentum tincidunt sed vitae magna.\nInteger nulla odio, sagittis id porta commodo, hendrerit vestibulum risus.\n...," ")
Легко пропустить скобки в начале и в конце и просто заметить \n. Печать mystring[0]
должна решить эту проблему (или любой другой индекс в списке /tuple и т.д.).
Я понимаю, что это ужасно старый пост, но я просто столкнулся с этим и хотел добавить его для ясности. Я считаю, что первоначальный пользователь спрашивает, как заставить ОС интерпретировать строку "some text\nsome more text" как:
некоторый текст
еще текст
Вместо печати:
"некоторый текст \nsome more text"
и ответ - это уже интерпретация. В ubuntu я столкнулся с проблемой того, что он ускользает от символов новой строки, когда я помещаю его в строку без моего запроса. Итак, строка:
"некоторый текст \nsome more text"
на самом деле
"некоторый текст \\nsome more text"
Все, что требуется, это использовать mystring.replace("\\\n", "\n")
, и желаемый результат будет достигнут. Надеюсь, это ясно и помогает будущему человеку.
>>> 'Hai Hello\nGood eve\n'.replace('\n', ' ')
'Hai Hello Good eve '
Не уверен, что это то, о чем вы просите, но вы можете использовать строку с тремя кавычками:
print """Hey man
And here a new line
you can put multiple lines inside this kind of string
without using \\n"""
Будет напечатан:
Hey man And here a new line you can put multiple lines inside this kind of string without using \n