ページへ戻る

− Links

 印刷 

Python​/ファイル操作 のバックアップソース(No.2) :: NJF Wiki

xpwiki:Python/ファイル操作 のバックアップソース(No.2)

« Prev[5]  Next »[6]
Pythonではファイルやディレクトリの存在チェックや削除など、主なファイル操作が一通りできるようになっています。

ただ、ファイル操作が中心ならshellを使った方が簡単なことが多いので、無理になにもかもPythonを使うより組み合わせたりするのがおすすめです。

*ファイルやディレクトリの存在チェック [#ebaf880c]

ファイルやディレクトリの存在チェックには「os.path.exists」を使います。
ファイル、ディレクトリ(フォルダ)どちらにも適用できて、相対パス、絶対パスどちらでも可能です。

 import os
 if os.path.exists("../"):
     print "exist!"
 else:
     print "not exist"

結果
 exist!

「../」は自分自身の実行されているディレクトリを指すので、必ず存在します。このようにファイルやディレクトリが存在すると、真を返します。

存在してかつファイルかどうかまで判定するには「os.path.isfile」、ディレクトリかどうかは「os.path.isdir」を使います。

使い方は「os.path.exists」と全く同じです。
 if os.path.isdir("../"):
     print "dir!"
 else:
     print "not dir"


 if os.path.isfile("../"):
     print "file!"
 else:
     print "not file"

結果

 dir!
 not dfile

*ディレクトリの作成 [#lc17f921]

ディレクトリを作成するには「os.mkdir」を使います。

 import os

 os.mkdir("test_dir")

すでに存在するとエラーになるので、たいてい前節のディレクトリの存在チェックとあわせて使うことになります。

*ディレクトリの削除 [#red41cd3]

ディレクトリが空なら「os.rmdir」を使います。

 os.rmdir("test_dir")

空では無く、中身も一緒に消したいときは「shutil.rmtree」を使います。
 import shutil
 shutil.rmtree("test_dir")

*ファイルの削除 [#f675df31]

ファイルを削除するには「os.remove」を使います。

 os.remove("test.txt")

*ファイルの移動 [#lf3238e2]
ファイルを移動するには「shutil.move」を使います。
 shutil.move("test1.txt","test2.txt")

*ファイル、ディレクトリの名前の変更 [#tce0a934]
ファイルなどの名前変更は「os.rename」を使います。
 os.rename("test1.txt","test2.txt")


« Prev[5]  Next »[6]