Относительный импорт Python не работает в VS Code, но работает в PyCharm.Python

Программы на Python
Anonymous
Относительный импорт Python не работает в VS Code, но работает в PyCharm.

Сообщение Anonymous »

Я пытаюсь импортировать db/connectdb.py в model/task.py, папки model и db находятся в основной папке проекта.< /p>
Когда я пытаюсь из db.connectdb импортировать ConnectDb, я получаю

ModuleNotFoundError: Нет модуля с именем 'db '

Когда я пытаюсь из ..db.connectdb импортировать ConnectDb, я получаю

Ошибка импорта: попытка относительного импорта без известного родительского пакета

В PyCharm все работает хорошо.
Я пытался добавить __init__.py в каждую папку, но возникла одна и та же проблема.
Это Connectdb.py:

Код: Выделить всё

import os
import sqlite3

class ConnectDb():
def __init__(self):
db_path = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'app.db')
if os.path.isfile(db_path):
self.db = sqlite3.connect(db_path)
else:
#self.db = None
print("non")

def get_connection(self):
return self.db
Это Task.py:

Код: Выделить всё

#from ..db.connectdb import ConnectDb or
from db.connectdb import ConnectDb
class Tasks():
def __init__(self):
self.db = ConnectDb().get_connection()

def get_all_tasks(self):
return self.db.execute("Select * from tasks").fetchall()

t = Tasks()
print(t.get_all_tasks())
Это структура папки:
[img]https://i.sstatic.net /BTWMJ.png[/img]


Подробнее здесь: https://stackoverflow.com/questions/782 ... in-pycharm

Вернуться в «Python»