Помилка модуля імпорту python


1

Кожен раз, коли я запускаю свій сценарій, я отримую:

  File "./ciinstall.py", line 35, in <module>
  import npyscreen
ImportError: No module named npyscreen

Ось мій код. Він перевіряє, чи встановлений мій екран. якщо ні, то встановіть його, то імпортуйте. якщо це тоді імпорт. Але натомість це дає мені помилку.

# Installing npyscreen before importing npyscreen for menu UI
npy = subprocess.call(shlex.split('locate npyscreen-3.2.egg-info'))
if npy == '1':
    os.chdir('/opt/')
    subprocess.call(shlex.split('sudo wget https://pypi.python.org/packages/sou$
    subprocess.call(shlex.split('tar xvf npyscreen-3.37.tar.gz'))
    os.chdir('npyscreen-3.2')
    subprocess.call(shlex.split('sudo ./setup.py'))
    subprocess.call(shlex.split('sudo rm npyscreen-3.37.tar.gz'))

import npyscreen

Відповіді:


0

Відповідно до 7-Zip для Windows, в архіві є Setup.py, але немає каталогу 3.2, у мене є /setup.py в корені, також шлях до налаштування:

\npyscreen-3.37.tar.gz\dist\npyscreen-3.37.tar\npyscreen-3.37\setup.py

os.chdir('/opt/'), puts you in /opt
wget https://pypi.python.org/packages/source/n/npyscreen/npyscreen-3.37.tar.gz, would download the tar into /opt
tar xvf npyscreen-3.37.tar.gz, should untar the package, in /opt
os.chdir('npyscreen-3.2') should be:
os.chdir('npyscreen-3.37')

тоді:

sudo ./setup.py
enter code here
sudo rm npyscreen-3.37.tar.gz
echo "Download and Install Finished."
import npyscreen

0

Мені не подобається встановлювати пакети, не повідомляючи користувачеві, але ось як це слід зробити:

try:
    import npyscreen
except ImportError:
    # Package not found, install it
    import subprocess
    subprocess.call(["sudo", "pip", "install", "npyscreen"])
    #TODO: check the return code for errors
    import npyscreen
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.