改行が必要です\n
他の場所から取得した文字列を印刷するときに明示的に表示します。したがって、文字列が 'abc\ndef'の場合、これは発生しません。
>>> print(line)
abc
def
しかし、代わりにこれ:
>>> print(line)
abc\ndef
これを実現するために、printを変更する方法、引数を変更する方法、または別の関数を完全に変更する方法はありますか?
pythonエスケープ文字を使用して停止できる別の方法は、次のような生の文字列を使用することです。
_>>> print(r"abc\ndef")
abc\ndef
_
または
_>>> string = "abc\ndef"
>>> print (repr(string))
>>> 'abc\ndef'
_
repr()
を使用することの唯一の問題は、文字列を一重引用符で囲むことです。引用符を使用する場合に便利です。
'string_escape'
コーデックでエンコードするだけです。
>>> print "foo\nbar".encode('string_escape')
foo\nbar
Python3では、'string_escape'
はunicode_escape
になりました。さらに、エンコード後のデコードを伴うように、バイト/ユニコードについてもう少し注意する必要があります。
>>> print("foo\nbar".encode("unicode_escape").decode("utf-8"))
最も簡単な方法:str_object.replace("\n", "\\n")
allエスケープ文字を表示したい場合は他の方法の方が適していますが、改行だけが必要な場合は、直接置換を使用してください。