2011-06-25 6 views

答えて

103

を使用repr

a = "Hello\tWorld\nHello World" 
print repr(a) 
# 'Hello\tWorld\nHello World' 

はあなたがスペースのために\sを得ることはありません。私はそれがタイプミスだったと思います...?

しかし、あなたが本当にスペースの\sをしたいならば、あなたはこれを行うことができます:

print repr(a).replace(' ',r'\s') 
12

あなたは、単にそのように文字列を印刷したい、またはあなたはそれが文字列の内部表現になりたいんですか?後者の場合は、rという接頭辞を付けてraw stringとして作成します。r"Hello\tWorld\nHello World"

>>> a = r"Hello\tWorld\nHello World" 
>>> a # in the interpreter, this calls repr() 
'Hello\\tWorld\\nHello World' 
>>> print a 
Hello\tWorld\nHello World 

はまた、\sは、正規表現を除いて、エスケープ文字ではなく、それはまだあなたがそれを使用しているものよりもはるかに異なる意味を持ちます。

-5

他の回答はよく見えます。また、これもうまくいくと思います。私はそれらをエスケープするために他の '\'の前に '\'を追加しました。

a = "Hello\\tWorld\\nHello World" 

print a 
+2

私には、質問のコードから何も変更していないようです。 – JoriO

関連する問題