Python でファイルをコピー
ここでは Python でファイルをコピーする方法を説明します。
目次
Python でファイルをコピーする - shutil.copyfile()
shutil.copyfile(src, dst) 関数を使うと、元のファイル src と同じコンテンツ (データ) をもつファイルを dst としてコピーし作成します。
import shutil
shutil.copyfile('test1.txt', 'test2.txt')
ただし、ファイルのパーミッションなどはコピーされません。
Python でファイルをコピーする - shutil.copy()
shutil.copy(src, dst) 関数を使うと、元のファイル src と同じコンテンツ (データ) をもつファイルを dst としてコピーし作成します。
もし dst がディレクトリを指定した場合、ディレクトリ dst の中に src と同じ名前のファイルとしてコピーを作成します。
shutil.copyfile でコピー先にディレクトリを指定すると、エラー IsADirectoryError になります。
import shutil
shutil.copy('test1.txt', 'dir1')
# ディレクトリ dir1 の中に test1.txt という名前で
# ファイルがコピーが作成される
shutil.copy() ではパーミッションなどのメタデータはコピーされません。
Python でファイルをコピーする - shutil.copy2()
shutil.copy2(src, dst) 関数を使うと、元のファイル src と同じコンテンツ (データ) をもつファイルを dst としてコピーし作成します。
動作は shutil.copy(src, dst) 関数と同様ですが、shutil.copy2(src, dst) 関数はメタデータのコピーも試みます。