У меня забавная ошибка импорта при использовании наследования в Python.
В родительском классе я импортирую модуль sqlite3, в дочернем классе я затем пытаюсь использовать функцию sqlite3, но получаю сообщение об ошибке «NameError: глобальное имя sqlite3 не определено». Почему это происходит и как это исправить?
2 класса находятся в отдельных файлах:
Parent.py
import sqlite3
class Parent:
def __init__(self):
self.create_database()
def create_database(self):
""" Virtual function to be overriden in child classes """
pass
...more class functions that use sqlite3 functions
Child.py
import Parent
class Child( Parent.Parent ):
def create_database(self):
self.db = sqlite3.connect("test.db") # Error occurs HERE
c = Child()