お世話になります。
python初心者になります。おそれいりますが質問させて頂きます。
実施したい事は3つになります。
. エラー処理の関数を作成したい。 tryの内容は全て異なる。
. エラーの内容をcsvへ出力したい。
. try文を外から引数で呼び出して実行したい。
例外処理を実施した際、エラーになった場合にエラー内容をcsvに出力させたいです。
例外処理は複数あり10個以上あり、様々なエラーが考えられます。
毎回tryとexceptionをコーディングするのもステップ数が増える為、削減したいです。例外処理についても関数で呼び出したいと考えております。
お手数をおかけしますがよろしくお願いします。
ためしたこと
csv出力
def create_csv(csvname,variable_field): setfilename = csvname + '.csv' # with open(setfilename, 'a', newline='') as f: before vietnam with open(setfilename, 'a', encoding='utf-8', newline='') as f: writer = csv.writer(f) # 時間を取得する為に、まず全ての日時間を取得する for_write_time = datetime.datetime.now() # 2018-05-14 09:59:07.812884 fixed_field = ["date", datetime.date.today(), "hour", "{}:{}:{}".format(for_write_time.hour, for_write_time.minute, for_write_time.second), 'microsecond',for_write_time.microsecond] #print("variable_fieldの型は",type(variable_field)) #list リスト型の場合 if isinstance(variable_field,list): # print("csv-outpiut:list ",type(variable_field)) writer.writerow(fixed_field + variable_field) # 固定項目+可変項目 #dict 辞書型の場合 elif isinstance(variable_field,dict): # print("csv-outpiut:dict ",type(variable_field)) lst = [] for e in variable_field.items(): lst.extend(e) # print("lst :",lst) writer.writerow(fixed_field + lst) # 固定項目+可変項目 #タプル型の場合 elif isinstance(variable_field,tuple): # print("csv-outpiut:tuple ",type(variable_field)) listed_var = list(variable_field) writer.writerow(fixed_field + listed_var) # 固定項目+可変項目 else: print("csv-outpiut:other ------------------e-r-r-o-r-e-r-r-o-r-e-r-",type(variable_field))
例外処理
#Main 例えば error("Sample1 = hogehohe.hoge(TARGET_hoge)"): error("ここに異なるtry命令 このような例外処理が10個以上あります"): def error(content) # 例外処理 try: content #??? Sample1 = hogehohe.hoge(TARGET_hoge) #処理を実施するこの部分は例外処理毎に毎回異なります。ここではサンプルを記載します。 except Exception as error_info: print(error_info) create_csv("error",error_info)
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2018/06/15 15:14
2018/06/15 15:19
退会済みユーザー
2018/06/15 15:23
2018/06/15 15:25 編集