2014-02-06 4 views
1

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

abc 
├── __init__.py 
└── package 
    ├── __init__.py 
    ├── __init__.pyc 
    ├── client.py 
    ├── client.pyc 
    ├── server.py 
    └── server.pyc 

при запуске питон в командной строке за пределами abc и попытаться импортировать пакет, как показано ниже:

ImportError: No module named package 

Есть идеи?

ответ

3

Если вы импортируете package, в отличие от abc.package, вам необходимо поставить abc на номер PYTHONPATH.

+0

Кстати, у меня были проблемы с этим http://stackoverflow.com/questions/10273373/importerror-cannot-import-name -abcmeta-python-error-in-pydev-on-linux был вроде царапает мою голову. –

+0

@JamesLin: Ой, 'abc' было фактическим именем пакета? Имя 'package' заставило меня думать, что все имена были составлены для целей вопроса. Думаю, именно здесь SSCCE (http://sscce.org/) устранил бы двусмысленность. – NPE

+0

Yeah lol ... никогда не используйте 'abc' снова ... –

1

я смог пип работать снова, выполнив следующие действия:

cd /tmp/ 
wget https://bootstrap.pypa.io/get-pip.py 
sudo apt-get purge -y python3-pip 
sudo python3 ./get-pip.py 
sudo apt-get install python3-pip 
Смежные вопросы