Что может быть причиной того, что Python не читает файлы .py c или .pyd на новом облачном сервере? - PullRequest
0 голосов
/ 03 марта 2020

Я искал все выше и ниже, но не нашел этот вопрос точно заданным ранее. Я новичок в этом процессе, поэтому ответ может оказаться очень простым.

Я запускаю Python в виртуальной среде Anaconda model, которая ссылается на библиотеки Python 2.x 32-битное программное обеспечение в C:\Program Data (x86). Все это находится на Windows 64-битном AWS облачном сервере, который я только что создал, так что на этом компьютере нет никаких инсталляций, кроме тех, которые я сегодня добавил к нему вручную. Я установил 32-битную Anaconda 2--4.3.1 с Python 2.7, самим программным обеспечением и model (в котором находятся конкретные c версии многих пакетов Python).

Когда я открываю приглашение Anaconda и ввожу activate model, а затем пытаюсь Python импортировать любые .pyc или .pyd файлы, которые мне нужны из программного обеспечения, я получаю:

File "<stdin>", line 1, in <module>
ImportError: DLL load failed: The specified module cannot be found.

Я довольно наверняка это не проблема с каталогом. Когда я использую uncompyle6 для декомпиляции любого из файлов .pyc в файл .py и помещения его в тот же каталог, команда работает нормально, пока не будет импортирован следующий .pyc:

File "<stdin>", line 1, in <module>
File "c:\program data (x86)\[rest of the filepath]\app.py", line 8, in <module>
   import core._services as value1
ImportError: DLL load failed: The specified module cannot be found.

^ Попытка импортировать core._services.pyc. Когда я декомпилирую это тоже в .py, это работает, но у меня возникает та же проблема со следующим импортом.

Более того, когда я выполняю весь этот процесс на своем локальном компьютере, включая все установки и та же версия Anaconda и точно такие же каталоги, все работает нормально.

Кажется, Python на моем облачном сервере AWS действительно просто не могут прочитать .pyc s и .pyd s. uncompyle6 работает один раз, но я не могу сделать это для .pyd с, и существуют сотни этих библиотек.

Что может быть причиной того, что Python не может импортировать эти .pyc файлы? Это потому, что я использую 64-битный сервер с этими 32-битными скриптами? Может ли это быть "отладочная" версия Python, для этой темы ? Это как-то связано с __pycache__ или cython? Может быть, настройки безопасности делают это?

Моя цель здесь - просто Python читать библиотеки, чтобы я мог запускать вещи в model. Любая помощь приветствуется.

1 Ответ

0 голосов
/ 03 марта 2020

Похоже, вам не хватает DLL или она не сохранена в соответствующем месте.

...