Почему Pylons не распознается, когда я запускаю «импорт пилонов» в командной строке Windows Vista?

Когда я пытаюсь импортировать пилоны в виртуальную среду Python, я получаю сообщение об ошибке

C:\env\Scripts>python
Python 2.7 (r27:82525, Jul  4 2010, 07:43:08) [MSC v.1500 64 bit (A
MD64)] on win32
Type "help", "copyright", "credits" or "license" for more informati
on.
>>> import pylons
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\env\lib\site-packages\pylons-1.0-py2.7.egg\pylons\__init
__.py", line 6, in <module>
    from paste.registry import StackedObjectProxy
ImportError: No module named registry

Насколько я понимаю эту ошибку, Python сообщает мне, что не может найти модуль с именем registry. Возможно, это результат ошибки, которую я получил при установке Pylons, которая объясняется здесь Почему я получаю сообщение об ошибке в последней строке установки Pylons 1.0 с easy_install и Python 2.7 в Windows Vista 64?

Кажется, что многие компоненты Pylon были установлены, но я предполагаю, что реестр не установлен, или, возможно, Pylons просто не видит его.

Любые идеи о том, как решить эту проблему?


person Community    schedule 30.09.2010    source источник
comment
Вы уверены, что установленная вами версия Pylons 1. совместима с Vista, 2. совместима с Python 2.7 и 3. совместима с 64-разрядной версией Python 2.7? Большинство нестандартных библиотек или расширений несовместимы с Python для AMD 64.   -  person Rafe Kettler    schedule 30.09.2010
comment
Я уверен, что установил Pylons 1.0. Поскольку он совместим с Vista и AMD64, я полагаю, что автор Pylons упомянул бы что-нибудь об этом на сайте Pylon pylonshq.com/docs/en/1.0/gettingstarted/#requirements. Там написано, что Python 2 серии выше, включая 2.4 (Python 3 или более поздние версии в настоящее время не поддерживаются). Теперь я действительно запутался. Вы говорите, что мне нужно установить 32-битный Python?   -  person    schedule 30.09.2010
comment
Я понимаю, что мне нужно сделать так, чтобы disutils Python получили доступ к моей цепочке инструментов компилятора, чтобы создать необходимые 64-битные расширения. Я все еще пытаюсь понять, как это сделать. Подходим ближе с помощью @pyfunc здесь stackoverflow.com/questions/3827170/   -  person    schedule 30.09.2010
comment
Попробуйте это с 32-битной версией Python. Несмотря на то, что у меня 64-битная машина и ОС, я использую 32-битную версию, потому что 64-битная версия создает несовместимости.   -  person Rafe Kettler    schedule 30.09.2010
comment
была бы у меня эта проблема, если бы я использовал 64-битный Python в дистрибутиве Linux? или это связано только с окнами? Спасибо за совет.   -  person    schedule 30.09.2010


Ответы (1)


Вы должны активировать виртуальную среду, прежде чем сможете импортировать пилоны.

C:\Users\Josh>env\scripts\activate
(env) C:\Users\Josh>python
ActivePython 2.6.2.2 (ActiveState Software Inc.) based on
Python 2.6.2 (r262:71600, Apr 21 2009, 15:05:37) [MSC v.1500 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import pylons
>>>

против этого

C:\Users\Josh\env\Scripts>python
ActivePython 2.6.2.2 (ActiveState Software Inc.) based on
Python 2.6.2 (r262:71600, Apr 21 2009, 15:05:37) [MSC v.1500 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> pylons
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'pylons' is not defined
>>>

Я предполагаю, что у вас установлен пакет pylons снаружи и внутри вашей виртуальной среды. Таким образом, python позволяет вам импортировать пилоны, но пакет вставки не установлен за пределами вашей виртуальной среды, поэтому вы получаете сообщение об ошибке.

Запуск пакетного скрипта activate (должен находиться в папке env\Scripts) должен решить проблему.

person Joshkunz    schedule 04.02.2011