Avant de procéder à l'exercice dans le titre, je souhaite apprendre les bases de python, donc je pense que le template créé précédent sera modifié et utilisé. Je ne pense pas qu'il soit nécessaire de le faire de cette façon, mais je continuerai avec l'esprit de m'en souvenir au fur et à mesure que je l'utilise (je ne me souviens pas si je ne l'utilise pas). Veuillez préciser. .. ..
C'est une méthode personnelle, mais si vous étudiez, je pense qu'il vaut mieux penser à utiliser les connaissances que vous avez apprises de force que Kodawaru pour écrire du beau code. Je vais apprendre ce qui ne va pas en échouant.
sample.py
# -*- coding:utf-8 -*-
import logging
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import japanize_matplotlib ### [Support japonais]
#Spécifiez le format du journal
# %(asctime)s :Une représentation lisible par l'homme de l'heure à laquelle le LogRecord a été généré.
# %(funcName)s :Le nom de la fonction qui contient l'appel de journalisation
# %(levelname)s :Niveau de journalisation des caractères pour les messages
# %(lineno)d :Numéro de la ligne source sur laquelle l'appel de journalisation a été émis
# %(message)s : msg %Message de journal demandé en tant qu'args
fomatter = logging.Formatter('%(asctime)s:%(funcName)s:%(levelname)s:%(lineno)d:\n%(message)s')
#Paramètres de l'enregistreur(Niveau de journalisation INFO)
logger = logging.getLogger(__name__)
logger.setLevel(logging.INFO)
#Paramètres du gestionnaire(Modifier le fichier de sortie/Réglage du niveau de journal/Paramètres de format de journal)
handler = logging.FileHandler('handler_log.log')
handler.setLevel(logging.INFO)
handler.setFormatter(fomatter)
logger.addHandler(handler)
class SampleClass(object) :
def SampleFunc(self) :
try :
logger.info("Hello World")
#Gestion des exceptions
except :
logger.exception("", exc_info=True)
if __name__ == '__main__' :
try :
main_Class = SampleClass()
main_Class.SampleFunc()
#Gestion des exceptions
except :
logger.exception("", exc_info=True)
2019-11-22 16:54:28,955:SampleFunc:INFO:31:
Hello World
sample.py
(Omis)
class SampleClass(object) :
def __init__(self) :
try :
logger.info("Initialisation de classe")
#Gestion des exceptions
except :
logger.exception("", exc_info=True)
(Omis)
2019-11-22 17:00:41,888:__init__:INFO:31:
Initialisation de classe
2019-11-22 17:00:41,889:SampleFunc:INFO:39:
Hello World
sample.py
(Omis)
class SampleClass(object) :
def __init__(self, argv="sample_01") :
try :
self.argv = argv
logger.info("Initialisation de classe: " + argv)
#Gestion des exceptions
except :
logger.exception("", exc_info=True)
def SampleFunc(self) :
try :
logger.info("Hello World : " + self.argv)
self.SampleFunc02()
#Gestion des exceptions
except :
logger.exception("", exc_info=True)
def SampleFunc02(self, argv02="InitSample02") :
try :
logger.info("SampleFunc02 : " + argv02)
#Gestion des exceptions
except :
logger.exception("", exc_info=True)
(Omis)
2019-11-22 17:12:43,213:__init__:INFO:32:
Initialisation de classe: sample_01
2019-11-22 17:12:43,213:SampleFunc:INFO:40:
Hello World : sample_01
2019-11-22 17:12:43,213:SampleFunc02:INFO:49:
SampleFunc02 : InitSample02
Ce destructeur a été difficile à comprendre depuis que j'étudiais le C ++. .. .. Pour le moment, je ferai beaucoup d'erreurs et je prendrai une position pour me souvenir en faisant des erreurs, alors je vais essayer de l'intégrer de force.
sample.py
(Omis)
def __del__(self) :
try :
print('This Class is deleted')
#Gestion des exceptions
except :
logger.exception("", exc_info=True)
(Omis)
réduction
Vous pouvez utiliser l'héritage de la même manière, mais je le ferai à ma manière car je suis autodidacte.
sample.py
(Omis)
class ChildClass01(SampleClass) :
pass
class ChildClass02(SampleClass) :
def ChildClass02Func(self) :
try :
logger.info("ChildClass02Func Hello World : " + self.argv)
#Gestion des exceptions
except :
logger.exception("", exc_info=True)
(Omis)
if __name__ == '__main__' :
try :
#Créer des variables de classe(À ce point__init__La fonction est appelée)
main_Class = SampleClass()
main_Class1 = ChildClass01("★")
main_Class2 = ChildClass02("■")
#Appeler une fonction de classe
main_Class.SampleFunc()
main_Class1.SampleFunc()
main_Class2.SampleFunc()
main_Class2.ChildClass02Func()
(Omis)
2019-11-22 17:37:03,556:__init__:INFO:32:
Initialisation de classe: sample_01
2019-11-22 17:37:03,556:__init__:INFO:32:
Initialisation de classe: ★
2019-11-22 17:37:03,556:__init__:INFO:32:
Initialisation de classe: ■
2019-11-22 17:37:03,556:SampleFunc:INFO:40:
Hello World : sample_01
2019-11-22 17:37:03,556:SampleFunc02:INFO:49:
SampleFunc02 : test
2019-11-22 17:37:03,556:SampleFunc:INFO:40:
Hello World : ★
2019-11-22 17:37:03,557:SampleFunc02:INFO:49:
SampleFunc02 : test
2019-11-22 17:37:03,557:SampleFunc:INFO:40:
Hello World : ■
2019-11-22 17:37:03,557:SampleFunc02:INFO:49:
SampleFunc02 : test
2019-11-22 17:37:03,557:ChildClass02Func:INFO:69:
ChildClass02Func Hello World : ■
Il y a beaucoup d'autres choses que j'aimerais essayer, mais comme j'ai dépassé la capacité de mon cerveau, j'aimerais écrire de force un programme en utilisant ce modèle (tout en l'examinant comme il convient) la prochaine fois.
Recommended Posts