パスを読んでPythonのデータは、なぜ二重のバックスラッシュを使うのか?

 

  • Pythonは、ウィンドウのデータパスがあり読ま3つの表現を持っています 

(1)'c:\\a.txt',——>、ここでは一般的な表現\\ \文字で道をエスケープ、エラーしやすくない
(2)r'c:\a.txt'- >文字列が\ので、ここで、脱出を宣言する必要はありませんが、通常のバックスラッシュ文字である(推奨

(3) 'C:/a.txt' 、 - > 直接スラッシュによって表され、Linuxなど、逃げない誤解(推奨

 

  • なぜそれの3つの表現はありますか?

スラッシュも左スラッシュ記号として知られているが、「/」です。

バックスラッシュも右スラッシュシンボルとして知られているが、「\」です。

UNIX / Linuxでは、パス用いて分離スラッシュを、このような「/ホーム/ hutaow」として、「/」;

Windowsでは、正のバックスラッシュの二つは経路を表すことができ、通常、「C:\ Windowsの\システム」として、「\」バックスラッシュを使用して、パスの区切りである参照 。
:時々 、私たちは「\\ Windowsの\\システムCは、そのようなパスが書かれた参照 、」 つまり、2とバックスラッシュのパスを分離するために、このようなアプローチは、多くの場合、上記の、実際には、Webアプリケーションやプログラミングで見られます代わりに:「/ Windowsの/システムC」 、 あなたはこのパスと間違って行くことはできません。しかし、書かれた「C:\ WINDOWS \システム」場合 、 それは奇妙なエラーのすべての種類が登場することができます。


文字列解析から、この点で上記の問題の理由は、分析します。
あなたは出力に改行をしたい場合は、出力文字列は、それは「\ n」のTAB、追加「\ t」の出力に似たこのフラグを追加しなければならない時に学んだプログラミングの人々がC、のように、知っておくべきことつまり、バックスラッシュ(「\」)の記号は、他の文字にエスケープ組み合わせて、それを次の文字に従います。この原則に従えば、あなたが出力二重引用符(にしたい場合は、 '「「\)、あなたが入力する必要がある」」、これは二重引用符に正しい書き込みメモリを含む文字列になります。あなたは、バックスラッシュを入力したいのであれば?非常にシンプルな、ちょうどノック「\\」が上。

文字列「C \ WINDOWS \システム」Cコンパイラへのパス文字列、実際に書き込まれたメモリは、バックスラッシュが含まれていなくても、「\」:場合は、おそらく一部の人は外見を見ているこちらを参照してください。バックスラッシュは他の文字になる文字でエスケープした直後に、再び間違って行くためにバインドと呼ばれます。
文字列解析はCコンパイラ、に限定されるものではなく、Javaコンパイラいくつかの設定ファイル、解析し、Webサーバー、従来のWindowsのために、などを、文字列解析でこの問題が発生しますが、単一のスラッシュ・パスを使用しています別のフォーム、不要なエラーのファイルパスが発生する可能性が解析に時間が得られるので、二重のバックスラッシュで別々のパスの形で存在していた「\\」。かかわらず、解析エンジンは、バックスラッシュ解析するかどうかのエスケープ文字を、メモリにその結果が「\」で、結果が問題になることはありません。

 

おすすめ

転載: www.cnblogs.com/zwt20120701/p/11267457.html