Без сервера не может импортировать локальные файлы, в том же каталоге;в файл питона - PullRequest
0 голосов
/ 02 июля 2019

У меня есть серверный код на python. Я использую требования serverless-python: ^ 4.3.0 для развертывания этого в AWS lambda. Мой код импортирует другой файл Python в том же каталоге, что и сам, что выдает ошибку.

serverless.yml:

functions:
  hello:
    handler: functions/pleasework.handle_event
    memorySize: 128
    tags:
      Name: HelloWorld
      Environment: Ops
    package:
      include:
        - functions/pleasework
        - functions/__init__.py
        - functions/config

(venv) ➜  functions git:(master) ✗ ls
__init__.py             boto_client_provider.py config.py               handler.py              sns_publish.py
__pycache__             cloudtrail_handler.py   glue_handler.py         pleasework.py

Как видите, pleasework.py и config находятся в одной папке, но когда я импортирую config в pleasework, я получаю сообщение об ошибке:

{
  "errorMessage": "Unable to import module 'functions/pleasework': No module named 'config'",
  "errorType": "Runtime.ImportModuleError"
}

Я борюсь с этим в течение нескольких дней и думаю, что мне не хватает чего-то простого.

import boto3
import config


def handle_event(event, context):
    print('lol: ')

1 Ответ

0 голосов
/ 10 июля 2019

хорошо, так что я выяснил свой вопрос.Неправильный способ импорта файла Вместо

import config

Я должен делать

import functions.config
...