ホームページ > バックエンド開発 > Python チュートリアル > Python 学習メモ: open() 関数がファイル パスを開いてエラーを報告する

Python 学習メモ: open() 関数がファイル パスを開いてエラーを報告する

不言
リリース: 2018-04-28 10:14:37
オリジナル
3202 人が閲覧しました

この記事では主にPythonの学習メモのopen()関数でファイルパスを開いた時のエラー報告の問題を紹介し、参考にさせていただきます。一緒に見てみましょう

ファイル読み取りモードでファイル オブジェクトを開くには、Python の組み込み open() 関数を使用し、ファイル名と識別子を渡します。識別子「r」は読み取りを意味します。

>>> f = open('D:/test.txt','r')
ログイン後にコピー

Python を初めて使用する学生の場合は、open() 関数には小さな落とし穴があり、見つけるのが非常に難しいことに注意してください。

エラーのデモンストレーション:

>>> f = open('D:\test.txt','r') 
Traceback (most recent call last): 
 
 File"<ipython-input-56-6a0acaf613c9>", line 1, in <module> 
 f =open(&#39;D:\test.txt&#39;,&#39;r&#39;) 
 
OSError: [Errno 22] Invalid argument: &#39;D:\test.txt&#39;
ログイン後にコピー

何も問題はないようですが、まったく同じです!よく見てください。スラッシュの方向が異なります。なぜこのようなことが起こるのでしょうか? Windows のシステム ファイル パスのスラッシュ記号が '' であるためです。

これは、文字内で特殊文字を使用する必要がある場合、Python はバックスラッシュ '' を使用して文字をエスケープするため、エラーの場合の '' がエスケープ文字として使用され、解釈が行われます。サーバーによって解釈されたファイル パスが間違っています。

これを修正するには 2 つの方法があります。1 つは、「」の方向を「/」に反転することです。これは、テキストの先頭を記述する正しい方法です。2 つ目は、エスケープ文字を含む文字列の前に「r」を追加します。エスケープせずに元の意味に従って文字列を表現します。 (推奨!)

>>> f = open(r&#39;D:\test.txt&#39;,&#39;r&#39;)
ログイン後にコピー

次も添付:

エスケープ文字表


エスケープ文字

説明

(行末)

行継続文字

\

バックスラッシュ記号

'

一重引用符

"

二重引用符

a

リング

b

バックスペース

e

以上がPython 学習メモ: open() 関数がファイル パスを開いてエラーを報告するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート