Ошибка модуля импорта Python
Каждый раз, когда я запускаю свой скрипт, я получаю:
File "./ciinstall.py", line 35, in <module>
import npyscreen
ImportError: No module named npyscreen
Вот мой код Он проверяет, установлен ли mypyscreen. если нет, то установите его, затем импортируйте. если это то импорт. Но вместо этого это дает мне ошибку.
# 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
2 ответа
Согласно 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
Мне не нравится устанавливать пакеты, не сообщая пользователю, но вот как я должен это сделать:
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