ファイルのバッチ処理に対する需要は日々多くあり、外部ファイルを呼び出すスクリプトを Python で記述する必要があることがよくあります。
今回は、Python で最も一般的に使用されるファイル操作方法のトップ 10 をまとめました。そのまま使用してください。
1. ファイルの作成とオープン
ファイルを操作したい場合は、まず指定したファイルを作成またはオープンし、ファイルオブジェクトを作成する必要があります。open()メソッドを使用して実装します。構文形式は次のとおりです:
file=open(filename[, mode[, buffering]])
ログイン後にコピー
パラメータの説明
- file: 作成されたファイル オブジェクト
- filename: の名前作成または開くファイルを指定するには、一重引用符または二重引用符を括弧で囲む必要があります。開くファイルが現在のファイルと同じディレクトリにある場合はファイル名を直接記述し、そうでない場合はフルパスを指定します。
- mode: オプションのパラメータ。オープン モードを指定するために使用されます。デフォルトは読み取り専用 (つまり、r) です。
- バッファリング: オプションのパラメータ。ファイルの読み取りおよび書き込みのキャッシュ モードを指定するために使用されます。 、値が 0 はキャッシュなしを意味し、値 1 はキャッシュを意味します。1 より大きい場合はバッファのサイズを意味します。デフォルトのキャッシュ モード。
デフォルトでは、存在しないファイルを開くと例外が表示されます。
#解決策:
現在のディレクトリ (実行可能ファイルと同じディレクトリ) に test.txt ファイルを作成します 呼び出し open() メソッドを使用する場合、mode パラメーターの値を w、w、a、a と指定します。存在しない場合は作成されます。
さまざまなモードを開くための完全な手順。
注: 開いているファイルはデフォルトで GBK エンコードを使用します。開いたファイルが GBK エンコードされていない場合、例外が表示される場合があります。解決策: 1. ファイルのエンコーディングを直接変更します。 2. ファイルを開くときに使用するエンコーディング方法を直接指定します (推奨)。
file=open('test.txt','r',encoding='utf-8')
ログイン後にコピー
2. ファイルを閉じます
ファイルを開いた後、リソースの占有を避けるために、時間内にファイルを閉じる必要があります。これを実現するには、close() メソッドを使用します。 。
注: close() メソッドを使用すると、バッファに書き込まれていない情報が最初にフラッシュされ、その後ファイルが閉じられます。
3. with ステートメントを使用してファイルを開きます。
ファイルを開くには、時間内に閉じる必要があります。ファイルを閉じるのを忘れると、予期せぬ問題が発生する可能性があります。また、ファイルを開くときに例外が表示されると、ファイルのクローズが間に合わなくなります。このような問題を回避するには、Python が提供する with ステートメントを使用できます。これにより、例外が表示されるかどうかに関係なく、with ステートメントの実行後に開いているファイルが確実に閉じられます。基本的な構文は次のとおりです:
with expression as target:
with-body
ログイン後にコピー
パラメータの説明:
式: ファイルを開く open() メソッドなどの式を指定します。 。 target: 変数を指定し、式の結果を変数に保存するために使用されます。 with-body: with ステートメントの本体を指定するために使用されます。これは、with ステートメントの実行後に関連する操作ステートメントにすることも、直接渡すこともできます。
with open('test.txt','w') as file
pass
ログイン後にコピー
4. ファイル コンテンツの書き込み
Python ファイル オブジェクトは、ファイルにコンテンツを書き込むための write() メソッドを提供します。
このうち、file は開いているファイル オブジェクト、str は書き込まれる文字列です。書き込みには書き込み権限が必要であり、開くモードを w (書き込み可能) または a (追加可能) として指定することに注意してください。
open() 関数を使用し、モードを w または a に変更してファイルを開いてファイル オブジェクトを作成します。 。 wモードでは古いデータを上書きして新しいデータを書き込みますが、aモードでは元のデータをもとに新しいデータを追加することができます。
5. データの読み取り
ファイルを開いた後、ファイルにコンテンツを書き込んだり追加したりするだけでなく、ファイル内のコンテンツを読み取ることもできます。ファイルを開くモードが r (読み取り) または r (読み取りおよび書き込み) であることを知っておく必要があります。主に 3 つの状況があります:
file.read([size])—size はオプションのパラメーターです。省略すると、すべての内容が一度に読み取られます。
file.readline()—毎回 1 行のデータを読み取ります。ファイルが大きい場合は、1 行を読み取ります。ラインごとに選択します。
file.readlines() - 文字列のリストを返します。各要素はファイルの行です。
with open('text.txt','r+',encoding='utf-8') as file:
print("读取前4个字符串")
print(file.read(4))
print("读取一行")
print(file.readline())
print("读取所有行")
print(file.readlines())
ログイン後にコピー
注: コンテンツの一部を読みたい場合は、まずファイル オブジェクトのeek() メソッドを使用してファイル ポインタを新しい場所に移動します。次に、 read() メソッドを使用して取得します。
file.seek(offset[,whence]) このうち、offsetパラメータは移動する文字列の数を指定するために使用され、漢字1文字あたり2文字を占めます;ceの値が0の場合、それから数えることを意味しますファイルの先頭。1 は現在の位置からカウントすることを意味し、2 はファイルの末尾からカウントすることを意味し、デフォルトは 0.
6. ファイルのコピー
Python では、 shutil モジュールの copyfile() メソッドを使用してファイルをコピーします。
shutil.copyfile(src,dst)
ログイン後にコピー
其中,src:要复制的源文件;dst:复制到的目标文件。
7、移动文件
Python移动文件需要使用shutil模块的move()方法。
shutil.move(src,dst)
ログイン後にコピー
其中,src:要移动的源文件;dst:移动到的目标文件。
8、重命名文件
Python重命名文件需要使用os模块的rename()方法。
os.rename(src,dst)
ログイン後にコピー
其中,src:指定要重命名的源文件;dst:指定重命名后文件。为确保正常执行,可以使用os.path模块的exists()方法判断要操作的文件是否存在。
9、删除文件
Python中删除文件需要使用os模块的remove()方法。
其中,path:指定要删除的文件路径,相对路径或绝对路径。
10、获取文件基本信息
文件本身包含一些信息,如文件最后一次访问时间、最后一次修改时间、文件大小等基本信息。通过os模块的stat()方法获取。
以上就是Python内置的十大常用的文件操作方法。
以上がPython の組み込みファイル操作トップ 10の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。