Подключения к данным субмодуля Python

Моя структура папок

setup.py
/main
  __init__.py
  /data
     __init__.py
     data.py
  /clients
    __init__.py
    clients.py

Я хочу, чтобы все соединения данных были изолированы в подмодуле данных, который затем импортируется другими модулями.

Содержимое моего файла

clients.py

import pandas as pd
class clientsClass:
    def __init__(self):
        from ..data.data import dc
        self.dc = dc  
clients = clientsClass()

data.py

class dataConnections:
    def __init__(self):
        self.sqlConn = #sqlConn#
dc = dataConnections()

/ main /init.py

from .clients.clients import clients

Все остальные __init__пустые. После запуска python setup.py install Я могу импортировать мой пакет с import main но dir(main) списки clients, data как подмодули.

Почему это происходит? Я хочу, чтобы подключение для передачи данных отображалось только как атрибут dc модуля клиентов, но он также отображается в основном модуле. Я импортирую pandas в clients и это не отображается в главном модуле, так почему data?

0 ответов

Другие вопросы по тегам