我有下面的類:如何讓子類調用__init__方法
import cfg
import sqlite3
import logging
# logger = logging ......
class Connection:
def __init__(self):
try:
self.connection = sqlite3.connect(cfg.pathToDatabase)
self.connection.row_factory = sqlite3.Row
self.cursor = self.connection.cursor()
logger.info("Connection to database at " + cfg.pathToDatabase + " successful")
except Exception, e:
logger.critical("Error connecting to database")
logger.exception(e)
該類將從多個類實例化。在下面一行:
logger.info("Connection to database at " + cfg.pathToDatabase + " successful")
我想日誌的類稱爲在連接類__ __的init方法。這可能嗎 ?
例如,基於以下幾點:
class Child:
def __init__(self):
self.connection = Connection()
我希望看到這個記錄:
"Connection to database at data.sqlite successful from class: Child"
什麼是「這種方式」?你沒有展示任何方法或方法來使用你的課堂。 – defuz
好的,我不認爲我需要第一個問題 - 我已經明白了這一點。我已經編輯了我的問題。 – Sherlock
爲什麼你認爲只會有'Connection'類被實例化的類。可以從任何地方實例化它。一般來說,一個班級知道是誰打電話是不好的做法,並根據這些信息做一些事情。 – Vikas