Как бы вы установили python модулей / пакетов, чтобы мой скрипт можно было запускать с pypy3 вместо Python3? ImportError: нет модуля с именем - PullRequest
0 голосов
/ 06 августа 2020

У меня есть Python3 .8, созданный из исходных текстов на моем рабочем столе Debian 10 Xfce (двоичные файлы недоступны в репозиториях Debian). Тем не менее, всякий раз, когда я могу, я запускаю свои python скрипты с pypy3, что я делаю ради производительности. Теперь, когда я запускаю следующий код с pypy3:

#!/usr/bin/env python3.8

import requests
from bs4 import BeautifulSoup

url = input("What is the address of the  web page in question?")

response = requests.get(url)


soup = BeautifulSoup(response.text, 'html.parser')

print(soup.title.string)

, я получаю от pypy3:

ImportError: нет модуля с именем 'requests'

Тот же сценарий запускается Python3 .8 без каких-либо проблем

Я предполагаю, что мне придется установить модуль аналогично тому, как я сделал это для Python, а именно: sudo pip3. 8 запросов на установку. Основываясь на моем исследовании аналогичной проблемы, описанной в Stackoveflow Я попробовал:

pypy3 -m pip3.8 install requests

и получил следующее из моего pypy3:

Ошибка при поиске модуля спецификация для 'pip3.8' (ImportError: No> module named 'pip3')

Затем я также попытался запустить:

pypy3 -m pip install requests

И получил следующее:

Нет модуля с именем pip

Мой pip3.8 отлично работает для Python3 .8, но не для моего pypy3.

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

Ответы [ 2 ]

1 голос
/ 07 августа 2020

Выполните это один раз, чтобы установить сам pip: pypy3 -m ensurepip

Следующая версия PyPy улучшит сообщение об ошибке, чтобы явно описать эту команду, когда вы выполняете pypy3 -m pip, а pip еще не установлен.

0 голосов
/ 07 августа 2020

pypy3

Включить снимки в Debian и установить pypy3

Snap - это приложения, упакованные со всеми их зависимостями для запуска во всех популярных Linux дистрибутивах из одной сборки . Они обновляются автоматически и плавно откатываются.

Снапы можно обнаружить и установить из Snap Store, магазина приложений с миллионной аудиторией.

Включить snapd:

    sudo apt update
    sudo apt install snapd

Установите pypy3:

    sudo snap install pypy3 --classic

Обычно пакет и пакет устанавливаются следующим образом:

Прежде всего, вам необходимо установить pip

Установить pip для Python 3

Чтобы установить Pip для Python 3 в Debian, выполните следующие действия:

Сначала обновите список пакетов с помощью:

   sudo apt update

Затем установите pip для Python 3 и всех его зависимостей, набрав:

   sudo apt install python3-pip

Проверьте установку, печать версии pip:

   pip3 --version

Номер версии может отличаться, но он будет выглядеть примерно так, как показано ниже:

   pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.5)

Использование Pip

С помощью pip мы можем устанавливать пакеты из PyPI, системы контроля версий, локальных проектов и из файлов распространения, но в большинстве случаев ses, вы будете устанавливать пакеты из PyPI.

мы хотим установить пакет с именем croniter, мы можем сделать это, выполнив следующую команду:

   pip install requests

Чтобы удалить пакет, выполните:

   pip uninstall requests
...