Пакет не устанавливается правильно в среду Python - PullRequest
0 голосов
/ 16 июня 2019

Я пытаюсь установить пакет PyJWT в среду, но сталкиваюсь с проблемой, когда он, кажется, установлен, и я могу импортировать пакет в python, но пакет пуст.

В командной строке Windows я делаю следующее:

activate my-env

, и я вижу, что моя командная строка отражает изменения, показывая (my-env) тогда я выдаю

pip -install PyJwt

и это говорит об успешном. Итак, теперь я запускаю python и пытаюсь

import jwt
dir(jwt)

Импорт работает, но dir() дает следующий вывод:

['__doc__', '__loader__', '__name__', '__package__', '__path__', '__spec__']

ОДНАКО, если я сначала не выбираю среду, то есть я делаю pip install без предварительной активации среды, тогда установка работает правильно, и когда я запускаю dir в пакете, я вижу правильный вывод:

['DecodeError', 'ExpiredSignature', 'ExpiredSignatureError', 'ImmatureSignatureError', 'InvalidAlgorithmError', 'InvalidAudience', 'InvalidAudienceError', 'InvalidIssuedAtError', 'InvalidIssuer', 'InvalidIssuerError', 'InvalidSignatureError', 'InvalidTokenError', 'MissingRequiredClaimError', 'PyJWS', 'PyJWT', 'PyJWTError', '__author__', '__builtins__', '__cached__', '__copyright__', '__doc__', '__file__', '__license__', '__loader__', '__name__', '__package__', '__path__', '__spec__', '__title__', '__version__', 'algorithms', 'api_jws', 'api_jwt', 'compat', 'decode', 'encode', 'exceptions', 'get_unverified_header', 'register_algorithm', 'unregister_algorithm', 'utils']

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

Любые предложения о том, что я сделал, чтобы создать эту ситуацию?

1 Ответ

1 голос
/ 16 июня 2019

Вы действительно пытались использовать пакет и получили ошибку, или вы просто смотрите на вывод dir(...) и , думаете , что что-то не так? Возможно, версия Python в вашей среде conda использует отложенную загрузку, а версия Python вне conda - нет.

Поскольку вы используете Anaconda, рассмотрите возможность установки PyJWT с conda вместо pip в вашей среде. Это должно разрешить все зависимости автоматически:

conda activate my-env
conda install pyjwt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...