PythonでCSVファイルにデータログを残す | プログラミング学習 初心者向け入門ガイド

ホーム › >>

PythonでCSVファイルにデータログを残す

記事掲載:https://laptrinhcanban.com/ja

PythonでCSVファイルにデータログを残す方法の説明。このレッスンの後、PythonでのCSV ファイルの読み込みとと書き込みを組み合わせることで、Pythonのwrite() メソッドを使用してCSVファイルにログを記録する方法を学習します。

Pythonでログを出力 | write()メソッド

ファイルを開いたり、閉じたり、書き込んだりするメソッドを使用して、CSV ファイルへの単純な Pythonログ出力関数を作成できます。

import os
import datetime
def outfilewrite(log_name):
#ログ用のフォルダパス作成
log_dir_path='./_logfile'
os.makedirs(log_dir_path,exist_ok=True)

#年月日取得ログファイル作成
d = datetime.datetime.now()
timestr=d.strftime('%Y%m%d')

#ログファイル名
logfile_name= (log_name+"_"+timestr+'.csv')
try:
#ログファイルを開く
outfile=open(os.path.join(log_dir_path,logfile_name),'a+')

#ファイルヘッダーcsvをログファイルに書き込む
outfile.write("{},{},{},{}\n".format('No','Work','Result','Detail'))
except PermissionError :
print("\n Error : Cant open logfile. Please Try again")
input(">>")
sys.exit()
return outfile

上記の.csvの代わりに.txt拡張子を付けてログファイルを指定することもできます。

ただし、ログ ファイルを読み取るときは、CSV 形式の方がログ ファイルの内容が記録された列を明確に確認できるため、.csv形式を使用することを推奨しています。

尚、上記の関数を作成するときは、次の記事で学んだ知識を使用しました。

ログ出力関数を使用してロギングする方法

たとえば、次の構造のディレクトリがあります。

  |data/
  |--dir1
  |--make_log.py

関数を使用するには、まず関数を実行し、関数の結果をファイル オブジェクトに任意の変数に割り当てます。

logfile=outfilewrite("new_log")

すると、以下のディレクトリに以下の名前のログファイル(new_log_yyyymmdd.csv)が作成さ_logfileれます。

  |data/
  |--dir1
  |--_logfile
  |  |--new_log_20210518.csv
  |--make_log.py

次に、Python でログインする必要があるプログラム内の任意の場所で、次のログ タイプを使用して、その変数で write() メソッドを使用します。

任意のコンテンツをログ ファイルの 1 行に記録します。:

logfile.write("log line 1\n")

ログ ファイルのさまざまな列にコンテンツを記録します。:

logfile.write("{},{},{}\n".format('1','Creat log file','Done'))

logfile.write("{},{},{},{}\n".format('2','Write log','Eror','PermissionError'))

結果:
Pythonでログを出力

次のように、python で Exceptionを使用して try catch を使用して、python から返されたエラーを取得し、そのエラーをログ ファイルに記録できます。

try:
#chạy xử lý
log_conttent1 = ["1","Creat Log file","Done",""]
except Exception as e:
log_conttent1 = ["1","Creat Log file","Error",e]

log_conttent.append(log_conttent1)

その中で、eとは実行時に処理が失敗した場合にPythonが返すエラー内容です。

また、ログファイルに書き込む内容をリストとして保存し、次のようにログファイルに書き込むこともできます。

log_conttent=[]

#処理1実行
log_conttent1 = ["1","Creat Log file","Error",""]
log_conttent.append(log_conttent1)

#処理2実行
log_conttent2 = ["2","write log file","Error","PermissionError"]
log_conttent.append(log_conttent2)

#処理3実行
log_conttent3 = ["3","write log","Done",""]
log_conttent.append(log_conttent3)
#...

#処理終了後、ログ内容をログファイルに出力
for log in log_conttent:
logfile.write("{},{},{},{}\n".format(log[0],log[1],log[2],log[3]))
logfile.close()

結果:
Pythonでログを出力

ファイルへのログ記録プロセスが完了したら、logfile.close()を使用してログ ファイルを閉じることを忘れないでください。

まとめ

上記 Kiyoshi は、PythonでCSVファイルにデータログを残す方法を示しました。レッスンの内容をよりよく理解するために、今日の例を書き直す練習をしてください。

そして、次のレッスンで Python の知識についてさらに学びましょう。

URL Link

https://laptrinhcanban.com/ja/python/nhap-mon-lap-trinh-python/csv-excel-json-xml-pdf/ghi-log-trong-python/

この記事は役立つと思ったらいいね!とシェアをお願いします
">

ホーム  › >>

Profile
きよしです!笑

Author: Kiyoshi (Chis Thanh)

Kiyoshi was a former international student in Japan. After graduating from Toyama University in 2017, Kiyoshi is currently working as a BrSE in Tokyo, Japan.