Shutilモジュール Python では、プロセスの自動化に役立ちます ファイルのコピーと削除 そしてディレクトリ。これは、Python の標準ユーティリティ モジュールに含まれます。
Shutil (シェル ユーティリティの略) モジュールは、ファイルおよびファイルのコレクションに対する高レベルの操作の多くの機能も提供します。
Shutil.copyfile() メソッドとは何ですか?
の shutil.copyfile() のメソッド パイソン ソース ファイルの内容を宛先ファイルにコピーするために使用されます。ファイルのメタデータはコピーされません。ソースと宛先はファイルを表す必要があり、宛先は書き込み可能である必要があります。宛先が既に存在する場合は、ソース ファイルで置き換えられます。それ以外の場合は、新しいファイルが作成されます。
ソースと宛先が同じファイルを表す場合、 SameFileError 例外 上げられます。
shutil.copyfile() メソッドの構文
shutil.copyfile(ソース、宛先、*、follow_symlinks = True)
パラメーター:
- ソース : ソースファイルのパスを表す文字列。
- 行き先 : 宛先ファイルのパスを表す文字列。
- follow_symlinks (オプション) : このパラメータのデフォルト値は True です。 False で、source がシンボリック リンクを表す場合、ファイルをコピーする代わりに新しいシンボリック リンクが作成されます。
注記: パラメータ リストの「*」は、後続のすべてのパラメータ (ここでは「follow_symlinks」) がキーワード専用パラメータであり、位置パラメータとしてではなく名前を使用して提供できることを示します。
戻り値:
このメソッドは、新しく作成されたファイルのパスを表す文字列を返します。
Python で Shutil.copyfile() メソッドを使用してファイルをコピーする方法
shutil.copyfile() メソッドを使用すると、ファイルを新しいファイルに簡単にコピーできます。この方法を使用するには、ソース ファイルの場所と宛先ファイルの場所を指定するだけです。
例を挙げて理解を深めてみましょう。
女優ラクル プリート シン
shutil.copyfile() メソッドを使用してソースから宛先にファイルをコピーする
この例では、Python を使用してコピー元からコピー先にファイルをコピーする方法について shutil.copyfile() の使用法を見ていきます。
Python3
# Python program to explain shutil.copyfile() method> # importing os module> import> os> # importing shutil module> import> shutil> # path> path>=> '/home/User/Documents'> # List files and directories> # in '/home/User/Documents'> print>(>'Before copying file:'>)> print>(os.listdir(path))> # Source path> source>=> '/home/User/Documents/file.txt'> # Destination path> destination>=> '/home/User/Documents/file(copy).txt'> # Copy the content of> # source to destination> dest>=> shutil.copyfile(source, destination)> # List files and directories> # in '/home / User / Documents'> print>(>'After copying file:'>)> print>(os.listdir(path))> # Print path of newly> # created file> print>(>'Destination path:'>, dest)> |
>
>
出力:
Before copying file: ['hrithik.webp'ltr'>ここでは、shutil.copyfile() メソッドの使用中にエラーが発生する可能性があることがわかります。ソースと宛先が同じファイルを表す場合、'SameFileError' 例外が発生します 宛先がディレクトリの場合、'IsADirectoryError' 例外が発生します 宛先が書き込み可能でない場合、'PermissionError' 例外が発生します Python3 # shutil を説明する Python プログラム.copyfile() メソッド # shutil モジュールのインポート import shutil # ソースパス source = '/home/User/Documents/file.txt' # 宛先パス destination = '/home/User/Documents/file.txt' # # ソースの内容を宛先にコピーします shutil.copyfile(source, destination) 出力: トレースバック (最後の呼び出し): ファイル 'copy.py'、行 31、shutil.copyfile(source, destination) ファイル ' /usr/lib/python3.6/shutil.py'、行 104、copyfile 内に SameFileError('{!r} と {!r} は同じファイル'.format(src, dst)) shutil が発生します。 SameFileError: '/home/User/Documents/file.txt' と '/home/User/Documents/file.txt' は同じファイルです。宛先パス: /home/User/Documents/file(copy)。 txt エラー処理 ここでは、shutil.copyfile() メソッド使用時のエラー処理を示します。 Python3 # shutil.copyfile() メソッドを説明する Python プログラム # shutil モジュールのインポート import shutil # ソースパス source = '/home/User/Documents/file.txt' # 宛先パス destination = '/home/User/Documents ' # ソースの内容をコピー先にコピーします try: shutil.copyfile(source, destination) print('ファイルは正常にコピーされました。') # shutil.SameFileError を除き、コピー元とコピー先が同じ場合: print('Source and宛先は同じファイルを表します。') # 宛先がディレクトリの場合。 IsADirectoryError を除く: print('宛先はディレクトリです。') # PermissionError 以外の権限の問題がある場合: print('権限が拒否されました。') # 以外のエラーの場合: print('ファイルのコピー中にエラーが発生しました.') 出力: 宛先はディレクトリです。 shutil.copyfile() 関数を使用して Python でファイルをコピーする方法を説明しました。これは、ファイルをコピーするために使用できる非常に使いやすい方法です。複製ファイルを作成したい場合に非常に便利です。 こちらもお読みください: Python3 でファイルをコピーする方法は? shutil.copy() メソッド あるファイルの内容を別のファイルにコピーする Python を使用して、あるディレクトリから別のディレクトリにすべてのファイルをコピーする Python を使用して既存のファイルの複製ファイルを作成するにはどうすればよいですか?>>