Укроп не может опустошать в другой средеPython

Программы на Python
Ответить
Anonymous
 Укроп не может опустошать в другой среде

Сообщение Anonymous »

Обзор
Мне нужна функция Azure Python для обслуживания маринованного объекта, и мне нужно, чтобы результирующий файл PKL был разумно переносимым, так что он Может использоваться в любом типичном ноутбуке или файле кода Python с минимальным импортом.

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

import dill

def test():
print("It worked!")

result = dill.dumps(test)
Результат вручную сохраняется на диске в виде файла pkl.
Код, используемый для загрузки файла pkl в другой проект:

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

import dill
file = open('test.pkl', 'rb')
test = dill.load(file)
file.close()
test()
Проблема
Во всех моих тестовых случаях приведенный выше код работает, но при запуске кода для генерации файл pkl из проекта, который будет развернут в Azure, полученный файл pkl невозможно загрузить в другой проект, например в блокнот Jupyter.
Когда я пытаюсь загрузить файл pkl, терминал результаты:
ModuleNotFoundError: нет модуля с именем «__app__»
Изменить: после некоторого копания выяснилось, что модуль __app__ является модулем верхнего уровня по умолчанию для функций Azure. Более того, dill включает в выходные данные абсолютные пути при попытке сериализации функций и лямбда-выражений, что кажется неправильным. Кто-нибудь знает обходной путь? Я не очень хорошо знаком с этой территорией, и любые подсказки, которые кто-либо может предложить здесь, будут очень признательны.


Подробнее здесь: https://stackoverflow.com/questions/705 ... nvironment
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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