81

ディレクトリが存在するかどうかを確認していますが、os.path.exists代わりに を使用していることに気付きましたos.path.isdirisdirどちらも問題なく動作しますが、の代わりに使用する利点について知りたいですexists

4

5 に答える 5

134

os.path.existsTrueその名前の通常のファイルがある場合にも返されます。

os.path.isdirTrueそのパスが存在し、ディレクトリであるか、ディレクトリへのシンボリックリンクである場合にのみ返されます。

于 2013-02-25T22:07:59.230 に答える
6

次のように聞こえますが、パスが存在するが、ディレクトリではなくファイルである場合はisdirFalse. 一方、両方の場合existsに戻ります。True

于 2013-02-25T22:08:01.720 に答える
0

ほとんどの場合、それは同じです。

ただし、パスは物理的に存在できますが、path.exists()Falseを返します。これは、os.stat()がこのファイルに対してFalseを返す場合に当てはまります。

パスが物理的に存在する場合、path.isdir()は常にTrueを返します。これはプラットフォームに依存しません。

于 2013-02-25T22:14:17.977 に答える