ディレクトリの作成
>>> import os
>>> os.mkdir("tmp")
ディレクトリの削除
>>> import os
>>> os.rmdir("tmp")
中身が空ではないディレクトリはos.rmdir()では削除できません。そのような時はshutil.rmtree()を用います。
>>> import os
>>> os.rmdir("tmp") #tmpディレクトリは空でないので削除できない
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
OSError: [Errno 39] Directory not empty: 'tmp'
>>> import shutil
>>> shutil.rmtree("tmp")
ディレクトリのコピー
>>> import shutil
>>> shutil.copytree("tmp","tmp2")
ディレクトリを移動・現在位置を確認・ファイル一覧を取得する
>>> import os
>>> os.chdir("/usr/local")
>>> os.getcwd()
'/usr/local'
>>> os.listdir(".")
['lib', 'games', 'man', 'include', 'share', 'src', 'sbin', 'bin', 'etc']
ファイルをコピー・移動する
shutil.copy()でファイルをコピーできます。shutil.copy2()は"cp -p"のようにファイルの属性もコピーします。shutil.moveは"mv"のようにファイルを移動・リネームします。
>>> import shutil
>>> shutil.copy("foo.txt","foo2.txt")
>>> shutil.copy2("foo.txt","foo3.txt")
>>> shutil.move("foo2.txt","foo3.txt")
ファイルサイズを取得する
>>> import os.path
>>> os.path.getsize("foo.txt")
23
指定したパスからディレクトリ名・ファイル名を抜き出す
>>> import os.path
>>> os.path.dirname("/usr/local/bin/python")
'/usr/local/bin'
>>> os.path.basename("/usr/local/bin/python")
'python'
>>> os.path.split("/usr/local/bin/python")
('/usr/local/bin', 'python')
指定したパスがディレクトリ・ファイルかを判定する
>>> import os.path
>>> os.path.isdir("/usr/local/bin")
True
>>> os.path.isfile("foo.txt")
True
指定したパスが存在するか判定する
>>> import os.path
>>> os.path.exists("foo.txt")
True
絶対パスを取得する
>>> import os.path
>>> os.path.abspath("foo.txt")
'/home/user/foo.txt'
条件を指定したファイル名の取得
>>> import glob
>>> glob.glob("*.txt")
['bar.txt', 'foo.txt']
最終更新:2009年08月08日 11:19