Pythonスキルを向上させたいですか?次に、Pythonを使用してコンピューターでいくつかのタスクを実行してみることができます。 Pythonを使用して、あるディレクトリから別のディレクトリにファイルをコピーして貼り付けることは、これを行うための楽しい方法です。
楽しいだけでなく、コードに気を取られることなく、ファイルの読み取りと書き込みをすばやく行うことができます。 Pythonを初めて使用する場合は、何らかの方法で習得する必要があるスキルです。それでは、この投稿を通じて、Pythonでファイルをコピーする方法を見つけましょう。
Pythonでファイルをコピーするための要件
Pythonでファイルをコピーして貼り付ける方法はたくさんあります。したがって、それを行うための要件は異なり、使用することを決定した方法によって異なります。
Pythonでファイルをコピーするために追加のモジュールは必要ないかもしれませんが、必要に応じて組み込みライブラリを使用することもできます。
たとえば、 あなた メソッド、あなたはそれをあなたのコードにインポートする必要があります。ただし、Pythonでファイルをコピーする一般的な方法の1つは、 シャティル 図書館。
これらのさまざまな方法を使用して、Pythonでファイルをコピーする方法を見てみましょう。
Pythonの組み込みShutilライブラリを使用してファイルをコピーする方法
NS シャティル moduleは、Pythonでファイルをすばやく読み書きするための組み込みの強力なPythonライブラリです。
これを使用するには、ソースファイルと宛先ファイルのフルパスを指定するだけで済みます。
Windows10はwifi接続をドロップし続けます
本質的に、 シャティル この形式を取ります:
shutil.copy([source directory path], [destination directory path], follow_symlinks=True)
たとえば、以下のコードは shutdown.copy() 名前の付いたファイルをコピーするには copy.txt というフォルダから my_folder 名前の別のものに 行き先 。次に、宛先ファイルの名前を次のように変更します newFile.txt :
import shutil
sourceFile = 'C:/Users/some_directories/my_folder/copy.txt'
destinationFile = 'C:/Users/some_directories/destination/newFile.txt'
shutil.copy(sourceFile, destinationFile, follow_symlinks=True)
選択した任意のコードエディタでコードを記述できることに注意してください。その後、コマンドラインを使用して実行できます。
ただし、コマンドラインからPythonを実行することに慣れていない場合は、デフォルトのPython統合開発環境(IDLE)を使用することもできます。
関連している: 知っておくべきコマンドプロンプト(CMD)コマンド
NS shutdown.copy メソッドは、ソースファイルのメタデータをコピーしません。本質的に、マシンは宛先ファイルを完全に新しいファイルと見なし、新しいメタデータを提供します。
ただし、元のファイルと一緒にメタデータをコピーするには、 shutdown.copy2 方法:
import shutil
shutil.copy2(sourceFile, destinationFile, follow_symlinks=True)
上記の方法では、古いファイルの元のメタデータが宛先ファイルに保持されます。たとえば、宛先ファイルは、ソースファイルを作成した日付、そのサイズ、およびその他の属性を保持します。
NS follow_symlinks 引数はシンボリックリンク宣言です。 シャティル 絶対パスをたどります。したがって、ソースファイルと宛先ファイルが異なるディレクトリにある場合は、それを含める必要があります。
ただし、両方のファイルが現在の作業ディレクトリにある場合は、 follow_symlinks 。そうした場合、Pythonは構文例外を発生させます。
ゲームウィンドウ10用にコンピュータを高速化する方法
したがって、ソースファイルを現在の作業ディレクトリに貼り付ける場合、コードは次のようになります。
import shutil
shutil.copy2(sourceFile, destinationFile)
上記のshutilメソッドを使用することに加えて、次を使用することもできます shutdown.copyfile また shutdown.copyfileobj 。
使用する shutdown.copyfileobj ビルトインが必要なため少し異なります 開いた 関数。次に、を含めることによってバイナリを読み書きする必要があります 'rb' と 'wb' 引数。
どのように shutdown.copyfileobj メソッドは、以前に使用したものと同じディレクトリを使用して機能します。
import shutil
sourceFilePath = open('C:/Users/some_directories/my_folder/copy.txt', 'rb')
destinationFilePath = open('C:/Users/some_directories/destination/newFile.txt', 'wb')
shutil.copyfileobj(sourceFilePath, destinationFilePath)
ご了承ください shutdown.copyfileobj() を必要としません follow_symlinks 口論。
しかし、 shutdown.copyfile() ほぼ同じように機能します 。コピー と .copy2 NS。それらは、内部機能がわずかに異なるだけです。
を使用するには shutdown.copyfile() 方法:
import shutil
sourceFilePath = 'C:/Users/some_directories/my_folder/copy.txt'
destinationFilePath = 'C:/Users/some_directories/destination/newFile.txt'
shutil.copyfile(sourceFilePath, destinationFilePath)
osモジュールでファイルをコピーする方法
NS あなた モジュールは、2つの組み込みメソッドを使用してファイルをコピーします。 os.system() と os.popen() メソッド。
NS os.system() メソッドを使用すると、コマンドライン環境を模倣できます。
ただし、osメソッドの欠点は、現在の作業ディレクトリ内のファイルのみをコピーすることです。
を使用するには os.system() Windowsでの方法:
import os
os.system('copy source.txt destination.txt)
ビルトインもご利用いただけます xcopy Windowsターミナルコマンド:
import os
os.system('xcopy source.txt destination.txt)
を使用するには os.system Linuxでのメソッド、置換 コピー と cp :
import os
os.system('cp source.txt destination.txt)
os.popenメソッドを使用してファイルをコピーする方法
この方法を使用するには、 os.system() と os.popen() 。
Windowsでは、次を使用します。
import os
os.popen('copy source.txt destination.txt)
私たちがしたように os.system() 、 交換 コピー と cp Linuxでこの方法を使用するには:
import os
os.popen('cp source.txt destination.txt)
Pythonのサブプロセスモジュールを使用してファイルをコピーする方法
上記の方法に加えて、 subprocess() Pythonでファイルをコピーするライブラリ:
import subprocess as sp
sp.call('copy sourceFile destinationFile', shell=True)
ただし、Linuxでは、次を使用します。
import subprocess as sp
sp.call('cp sourceFile destinationFile', shell=True)
NS サブプロセス ライブラリも使用します subprocess.check_out() 方法。それは同じように機能します subprocess.call() NS:
import subprocess as sp
sp.check_out('copy sourceFile destinationFile', shell=True)
Linuxでは、 コピー と cp :
import subprocess as sp
sp.check_out('cp sourceFile destinationFIle', shell=True)
ただし、osメソッドと同様に、サブプロセスメソッドは現在の作業ディレクトリ内のファイルでのみ機能します。
ノート: ソースファイルと同じ作業ディレクトリにある場合は、ファイルをフォルダにコピーすることもできます。宛先ファイル名を宛先フォルダーの名前に置き換えるだけです。ただし、宛先フォルダとソースファイルが現在の作業ディレクトリにあることを確認してください。
ライブラリを使用せずにPythonでファイルをコピーする方法
ライブラリに依存せずにPythonでファイルをコピーすることもできます。シャットダウン方法と同様に、必要なのはソースディレクトリと宛先ディレクトリのフルパスのみです。
2つのテーブルを並べて配置する方法
これを実現する方法は次のとおりです。
sourcePath = 'C:/Users/source_directories/my_folder/copy.txt'
destinationPath = 'C:/Users/some_directories/destination_directories/newFile.txt'
with open(sourcePath, 'rb') as read:
with open(destinationPath, 'wb') as myfile:
myfile.write(read.read())
コードを再利用可能にするには、コードを次の関数に変更します。
def copyFile(source=None, destination=None):
if not (source and destination)==None:
with open(source, 'rb') as read:
with open(destination, 'wb') as myfile:
myfile.write(read.read())
else:
print('Please enter the source and destination paths')
copyFile(sourcePath, destinationPath)
それでおしまい。ライブラリを使用せずに、Pythonで再利用可能なファイルコピー機を作成しました。
Pythonでタスクを自動化し続ける
プロジェクトの構築中にコードに集中できるようにするだけでなく、Pythonでファイルをコピーすると、Pythonでのファイル管理をよりよく理解できます。ただし、Pythonタスクをいじることは、特に初心者の場合、Pythonスキルを向上させる方法です。
たとえば、OSモジュールを使用してPCの日付と時刻を変更できます。必要に応じて、Pythonを使用してカスタムbashコマンドを作成することもできます。
共有 共有 つぶやき Eメール Clickを使用してPythonで独自のコマンドラインプログラムを作成する方法独自のPythonコマンドラインプログラムを作成したいのですが、難しすぎますか?便利なPythonツールであるClickを使用して、コードを合理化します。
次を読む 関連トピック- プログラミング
- Python
Idowuは、スマートな技術と生産性に情熱を注いでいます。暇なときは、コーディングで遊んだり、退屈したときにチェス盤に切り替えたりしますが、たまに日常から離れることも大好きです。現代のテクノロジーの周りの道を人々に示すことへの彼の情熱は、彼がもっと書くように動機づけます。
IdowuOmisolaのその他の作品ニュースレターを購読する
ニュースレターに参加して、技術的なヒント、レビュー、無料の電子書籍、限定セールを入手してください。
購読するにはここをクリックしてください