ディレクトリの作成

>>> 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']


タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2009年08月08日 11:19