Tengo un archivo auxiliar, llámelo helper.py con tres clases diferentes SQL,ML y AWS.

Cada clase contiene diferentes funciones auxiliares pero no todas necesitan los mismos paquetes, por ejemplo, AWS necesita el módulo boto3 pero SQL no.

He intentado

class AWS():
 def __init__(self):
   import boto3
   s3 = boto.client("s3")
 
 def magic():
   < do stuff with boto3>

Pero cuando llamo a aws = AWS().magic() obtengo "boto3 no está definido".

Podría incluir todos los paquetes en la parte superior de helper.py, pero prefiero no

0
CutePoison 27 jul. 2020 a las 10:52

1 respuesta

La mejor respuesta

Recomiendo dividir el archivo en tres partes.

- helper   # <-- make this as a folder
  - __init__.py
  - AWS.py
  - SQL.py
  - ML.py

En __init__.py

from .AWS import AWS
from .SQL import SQL
from .ML import ML

Si desea utilizar AWS en algún lugar

from helper import AWS
2
정도유 27 jul. 2020 a las 08:24