前書き

Pythonは、データを処理するための優れたツールです。 作成するプログラムには、データの読み取り、書き込み、または操作が含まれる可能性があります。 このため、さまざまな種類のデータを保存するさまざまなファイル形式の処理方法を知ることは特に役立ちます。

たとえば、アクセス制御のためにユーザーのhttps://www.digitalocean.com/community/tutorials/understanding-lists-in-python-3[list]をチェックするPythonプログラムを考えます。 ユーザーのリストは、テキストファイルに保存および保存される可能性があります。 おそらく、あなたはテキストを使って作業しているのではなく、代わりに財務分析を行うプログラムを持っているでしょう。 数値計算を行うには、保存されたスプレッドシートからそれらの数値を入力する必要があります。 アプリケーションに関係なく、データの入力または出力が含まれることはほぼ保証されています。

このチュートリアルでは、Pythonで処理できる形式タイプの一部について簡単に説明します。 ファイル形式の簡単な紹介の後、Python 3でテキストファイルを開く、読み取る、書き込む方法を説明します。

このチュートリアルを終えると、Pythonでテキストファイルを処理できるようになります。

前提条件

このチュートリアルでは、Python 3をインストールし、コンピューターにローカルプログラミング環境をセットアップする必要があります。 そうでない場合は、オペレーティングシステムに適したインストールおよびセットアップガイドに従ってセットアップすることができます。

バックグラウンド

Pythonは非常に優れており、比較的簡単に、次のようなさまざまなファイル形式を処理できます。

File type Description

txt

Plain text file stores data that represents only characters (or strings) and excludes any structured metadata

CSV

Comma-separated values file uses commas (or other delimiters) to structure stored data, allowing data to be saved in a table format

HTML

HyperText Markup Language file stores structured data and is commonly used with most websites   

JSON

JavaScript Object Notation is a simple and efficient format, making it one of the most commonly used formats to store and transfer data

このチュートリアルでは、* txt *ファイル形式に焦点を当てます。

手順1-テキストファイルの作成

Pythonで作業を始める前に、作業するファイルがあることを確認する必要があります。 これを行うには、テキストエディターを開き、新しいtxtファイルを作成します。これを「+ days.txt +」と呼びます。

新しいファイルに、数行のテキストを入力します。 この例では、曜日をリストします。

days.txt

Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday

次に、ファイルを保存し、どこに置いたかを確認します。 この例では、ユーザー* sammy *がファイルを次の場所に保存しました: + / users / sammy / days.txt +。 これは、Pythonでファイルを開く後の手順で非常に重要になります。

処理するtxtファイルができたので、コードを開始できます!

ステップ2-ファイルを開く

プログラムを作成する前に、Pythonプログラミングファイルを作成する必要があるため、テキストエディターでファイル + files.py +`を作成します。 作業を簡単にするために、 `+ days.txt +`ファイルと同じディレクトリに保存します: `+ / users / sammy / +

Pythonでファイルを開くには、まずディスク上のファイルをhttps://www.digitalocean.com/community/tutorials/how-to-use-variables-in-python-3 [変数]に関連付ける方法が必要です。 Pythonで。 このプロセスは、_ファイルを開く_と呼ばれます。 まず、ファイルの場所をPythonに指示します。 ファイルの場所は、多くの場合、ファイル_path_と呼ばれます。 Pythonがファイルを開くには、パスが必要です。 + days.txt +`ファイルへのパスは `+ / users / sammy / days.txt +`です。 Pythonでは、この情報を保存する文字列変数を作成します。 `+ files.py`スクリプトでは、 + path`変数を作成し、変数にdays.txtパスを設定します。

files.py

= '/users/sammy/days.txt'

次に、Pythonの `+ open()`関数を使用して、 ` days.txt`ファイルを開きます。 `+ open()+`関数は、最初の引数としてファイルパスを必要とします。 この関数では、他の多くのパラメーターも使用できます。 ただし、最も重要なのはオプションの_mode_パラメーターです。 Modeは、ファイルを開くモードを指定するオプションの文字列です。 選択するモードは、ファイルをどのように処理するかによって異なります。 モードオプションの一部を次に示します。

  • + 'r' +:読み取りに使用

  • + 'w' +:書き込みに使用

  • + 'x' +:新しいファイルの作成と書き込みに使用

  • + 'a' +:ファイルへの追加に使用

  • + 'r +' +:同じファイルの読み取りと書き込みに使用

この例では、ファイルからのみ読み取りたいため、 `+ ‘r’ `モードを使用します。 ` open()`関数を使用して ` days.txt `ファイルを開き、変数 ` days_file +`に割り当てます。

files.py

= open(path,'r')

ファイルを開いた後、そのファイルから読み取ることができます。これは次のステップで行います。

ステップ3-ファイルの読み取り

ファイルが開かれているので、操作できるようになりました(つまり、 割り当てられた変数を通して) Pythonは、ファイルから情報を読み取るための3つの関連操作を提供します。 3つの操作すべてを使用する方法を例として示し、それらがどのように機能するかを理解してみてください。

最初の操作 `+ <file> .read()+`は、ファイルの内容全体を単一の文字列として返します。

days_file.read()
Output'Monday\nTuesday\nWednesday\nThursday\nFriday\nSaturday\nSunday\n'

2番目の操作 `+ <file> .readline()+`はファイルの次の行を返し、次の改行文字までのテキストを返します。 もっと簡単に言えば、この操作はファイルを1行ずつ読み取ります。

days_file.readline()
Output'Monday\n'

したがって、readline操作で行を読み取ると、次の行に渡されます。 したがって、この操作を再度呼び出すと、次のようにファイルの次の行が返されます。

days_file.readline()
Output'Tuesday\n'

最後の操作である `+ <file> .readlines()+`はファイル内の行のリストを返します。リストの各項目は1行を表します。

days_file.readlines()
Output['Monday\n', 'Tuesday\n', 'Wednesday\n', 'Thursday\n', 'Friday\n', 'Saturday\n', 'Sunday\n']

ファイルから読み取る場合に留意する必要があるのは、読み取り操作の1つを使用してファイルを読み取った後、再度読み取ることはできないということです。 たとえば、最初に `+ days_file.read()`を実行してから ` days_file.readlines()+`を実行すると、2番目の操作は空の文字列を返します。 したがって、ファイルから読み取る場合は、まず新しいファイル変数を開く必要があります。 ファイルから読み取ったので、新しいファイルに書き込む方法を学びましょう。

ステップ4-ファイルの作成

このステップでは、タイトルとそれに続く曜日を含む新しいファイルを作成します。 まず、 `+ title +`変数を作成しましょう。

files.py

title = 'Days of the Week\n'

また、曜日を文字列変数に格納する必要があります。これを「+ days 」と呼びます。 わかりやすくするために、上記の手順のコードを含めます。 ファイルを読み取りモードで開き、ファイルを読み取り、読み取り操作から返された出力を新しい変数 ` days +`に保存します。

files.py

path = '/users/sammy/days.txt'
days_file = open(path,'r')
= days_file.read()

タイトルと曜日の変数ができたので、新しいファイルへの書き込みを開始できます。 まず、ファイルの場所を指定する必要があります。 繰り返しますが、ディレクトリ `+ / users / sammy / `を使用します。 作成する新しいファイルを指定する必要があります。 したがって、実際のパスは「 / users / sammy / 」になります。 ` new_path `変数で位置情報を提供します。 次に、指定された ` ‘w’ `モードで ` open()+`関数を使用して、書き込みモードで新しいファイルを開きます。

files.py

= '/users/sammy/new_days.txt'
= open(new_path,'w')

ファイルを開く前にnew_days.txtが既に存在していた場合、その古い内容は破棄されることに注意してください。`+ ‘w’ + `モードを使用する場合は注意してください。

新しいファイルを開いたら、書き込み操作 `+ <file> .write()+`を使用してファイルにデータを入れることができます。 書き込み操作は、文字列でなければならない単一のパラメーターを取り、その文字列をファイルに書き込みます。 ファイル内で新しい行を開始する場合は、明示的に改行文字を指定する必要があります。 まず、ファイルにタイトルを書き込み、続いて曜日を書き込みます。 また、スクリプトの進行状況を追跡するための良い習慣である、私たちが書いているもののいくつかの印刷ステートメントを追加しましょう。

files.py

new_days.write(title)
print(title)

new_days.write(days)
print(days)

最後に、ファイルの作成が完了するたびに、必ずファイルを閉じる必要があります。 これを最終ステップで示します。

ステップ5-ファイルを閉じる

ファイルを閉じると、ディスク上のファイルとファイル変数の間の接続が確実に終了します。 また、ファイルを閉じることにより、他のプログラムがそれらにアクセスできるようになり、データの安全性が確保されます。 そのため、必ずファイルを閉じてください。 それでは、 `+ <file> .close()+`関数を使用してすべてのファイルを閉じましょう。

files.py

days_file.close()
new_days.close()

これで、Pythonでのファイルの処理が終了しました。次に、コードの確認に進みます。

ステップ6-コードの確認

コードを実行する前に、すべてが適切に見えることを確認しましょう。 最終製品は次のようになります。

files.py

path = '/users/sammy/days.txt'
days_file = open(path,'r')
days = days_file.read()


new_path = '/users/sammy/new_days.txt'
new_days = open(new_path,'w')

title = 'Days of the Week\n'
new_days.write(title)
print(title)

new_days.write(days)
print(days)

days_file.close()
new_days.close()

コードを保存したら、次のようにターミナルを開いてPythonスクリプトを実行します。

python files.py

出力は次のようになります。

OutputDays of the Week

Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday

次に、新しいファイル( + new_days.txt)を開いて、コードが完全に機能することを再確認します。 すべてうまくいった場合、新しいファイルを開くと、次のようになります。

new_days.txt

Days of the Week
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday

ファイルは同じまたは似たように見えます-このチュートリアルは正常に完了しました!

結論

このチュートリアルでは、Python 3でプレーンテキストファイルを処理および操作する方法を説明しました。 これで、Pythonでファイルを開いたり、読み込んだり、書き込んだり、閉じたりすることができ、Pythonで独自のデータを操作し続けることができます。