文字列のエスケープされた表現を印刷するにはどうすればよいですか。たとえば、次の場合です。
s = "String:\tA"
出力したい:
String:\tA
代わりに画面上に
String: A
javaの同等の関数は次のとおりです。
String xy = org.apache.commons.lang.StringEscapeUtils.escapeJava(yourString);
System.out.println(xy);
文字列のエスケープされた表現を印刷するにはどうすればよいですか。たとえば、次の場合です。
s = "String:\tA"
出力したい:
String:\tA
代わりに画面上に
String: A
javaの同等の関数は次のとおりです。
String xy = org.apache.commons.lang.StringEscapeUtils.escapeJava(yourString);
System.out.println(xy);
string_escape
コーデックを使用して文字列をエンコードします。
print s.encode('string_escape')
repr()
または、関数を使用して、文字列を引用符を含むPythonリテラル表現に変換することもできます。
print repr(s)
デモンストレーション:
>>> s = "String:\tA"
>>> print s.encode('string_escape')
String:\tA
>>> print repr(s)
'String:\tA'
unicode_escape
Python 3では、代わりにコーデックを探します。
print(s.encode('unicode_escape'))
これはバイト値を出力します。これをUnicode値に戻すには、ASCIIからデコードするだけです。
>>> s = "String:\tA"
>>> print(s.encode('unicode_escape'))
b'String:\\tA'
>>> print(s.encode('unicode_escape').decode('ASCII'))
String:\tA
あなたが使用することができますrepr
:
print repr(s)
デモ
>>> s = "String:\tA"
>>> print repr(s)
'String:\tA'
これにより引用符が表示されますが、簡単に切り取ることができます。
>>> print repr(s)[1:-1]
String:\tA
print repr(string)
ショットを与える
相変わらず、Pythonでは簡単です:
print(repr(s))
print
str
エスケープを処理するを使用します。あなたが欲しいrepr
。
>>> a = "Hello\tbye\n"
>>> print str(a)
Hello bye
>>> print repr(a)
'Hello\tbye\n'