ホームページ >バックエンド開発 >Python チュートリアル >Python が文字列表現で二重バックスラッシュを表示するのはなぜですか?
バックスラッシュを使用した文字列の表現
Python でバックスラッシュを含む文字列を定義する場合、バックスラッシュが 2 回表示されるように見える場合があります。この観察は、__repr__() メソッドによって作成された表現から生じます。
my_string = "why\does\it\happen?" my_string
出力:
'why\does\it\happen?'
ただし、実際の文字列にはバックスラッシュが 1 つだけ含まれています。これを確認するには、次の文字列を出力します。
print(my_string)
Output:
why\does\it\happen?
バックスラッシュを含む文字列には、4 文字ではなく 3 文字が含まれます。
'a\b' len('a\b')
Output:
'a\b' 3
文字列の標準表現は repr() を使用して取得できます。組み込み関数:
print(repr(my_string))
出力:
'why\does\it\happen?'
バックスラッシュはエスケープ文字であるため、Python はバックスラッシュを で表します。たとえば、n は改行を表し、t はタブを表します。
この表現は潜在的な混乱を防ぎます:
print("this\text\is\not\what\it\seems")
出力:
this ext\is ot\what\it\seems
明示的にバックスラッシュ文字そのもの、別のバックスラッシュ文字でエスケープするバックスラッシュ:
print("this\text\is\what\you\need")
出力:
this\text\is\what\you\need
要約すると、バックスラッシュを含む文字列の表現には、安全上の理由からエスケープされたバックスラッシュが含まれています。ただし、実際の文字列にはバックスラッシュが 1 つだけ含まれています。
以上がPython が文字列表現で二重バックスラッシュを表示するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。