Python で文字列リテラルを扱うとき、プログラマーは接頭辞「r」に遭遇することがあります。このプレフィックスには特定の意味があり、特に文字列の処理に関しては特定の目的を果たします。
文字列リテラルの前にある文字「r」は、文字列を生の文字列として扱う必要があることを示します。これは、文字列内のすべてのエスケープ コードが無視され、よりリテラルな解釈が可能になることを意味します。
例として、正規表現では、エスケープ コードは次の目的で使用されます。特殊文字を表します。たとえば、「n」は改行文字を表します。ただし、生の文字列ではエスケープ コードは処理されず、これらの文字は文字通りに扱われます。
<code class="python">regex = re.compile( r'^[A-Z]' r'[A-Z0-9-]' r'[A-Z]$', re.IGNORECASE )</code>
この例では、各行は生の文字列 ("r" プレフィックスで示されます) であり、 「n」のような文字は、改行ではなく通常の文字として扱われます。
次の例を考えてみましょう:
公式の Python ドキュメントには、生の文字列では次のように記載されています。
「バックスラッシュに続く文字は変更せずに文字列に含まれ、すべてのバックスラッシュは文字列に残されます。」
本質的には、生の文字列を使用すると、プログラマは文字列のリテラル内容をより詳細に制御できるようになり、潜在的なあいまいさを回避したり、コードの競合を回避したりできます。
以上がPython で文字列リテラルの前に \'r\' を使用するのはいつ、なぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。