Как да използвам Numpy в Python IDLE?

Задавани са варианти на този въпрос, но отговорите винаги започват от нулата (т.е. от инсталирането на numpy).

Вече имам инсталиран numpy на моя компютър от по-ранен момент, когато изтеглих Anaconda.

Ако се опитам да инсталирам numpy отново с помощта на pip install numpy, получавам дълга грешка като, краят на която изглежда така

Command C:\Python27\python.exe -c "import setuptools, tokenize;__file__='c:\\users\\imray~1\\appdata\\local\\temp\\pip_build_Imray\\numpy\\setu
p.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\imray~1\appd
ata\local\temp\pip-smduhf-record\install-record.txt --single-version-externally-managed --compile failed with error code 1 in c:\users\imray~1\appdat
a\local\temp\pip_build_Imray\numpy
Storing debug log for failure in C:\Users\Imray\pip\pip.log

numpy работи добре, когато отворя cmd от папката Anaconda и команда import numpy. Но няма да работи от IDLE, дори ако навигирам до споменатата папка (чрез os.chdir('C:\Anaconda')) и издам същата команда.

Как да накарам numpy да работи в IDLE?


person CodyBugstein    schedule 05.08.2014    source източник


Отговори (1)


Първо, може би вече знаете, че Anaconda идва със собствена безплатна IDE, много подобна на IDLE в много отношения. Известен е като Spyder и трябва да бъде достъпен във всеки терминал като: spyder. Можете да спрете да четете на този етап и да използвате това.

Но ако наистина искате да използвате IDLE, ще трябва първо да го проследите. Той е в пакет с всяка дистрибуция на Python, която сте инсталирали на вашата система. Например, имам инсталирана версия на IDLE на следното място:

/usr/local/Cellar/python3/3.3.2/Frameworks/Python.framework/Versions/3.3/lib/python3.3/idlelib/idle.pyw

Ако стартирам дистрибуцията на Python, към която принадлежи това копие на IDLE, нямам достъп до NumPy, защото никога не съм го инсталирал в тази дистрибуция:

python3
...
>>> import numpy as np
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'numpy'

Все пак имам инсталиран NumPy в моята Canopy версия на Python (Canopy е много подобен на Anaconda).

python
...
>>> import numpy as np
>>>

Заобиколното решение, което мога да направя, за да получа NumPy в конзолата, е следното:

python /usr/local/Cellar/python3/3.3.2/Frameworks/Python.framework/Versions/3.3/lib/python3.3/idlelib/idle.pyw

Изпълнявам дистрибуцията Canopy на Python, която има инсталиран NumPy, и извиквам IDLE на другата дистрибуция на Python, както бихте направили всеки скрипт. Тогава конзолата IDLE изскача и не ми позволява да импортирам и използвам NumPy.

Това е малко заобиколно решение и открих, че е случайно. Когато използвам Python на Canopy, за да отворя IDLE, принадлежащ на друга дистрибуция на Python (Python 2.7, инсталиран чрез Homebrew), понякога получавам следната грешка, когато използвам оператора print:

Unknown object id: 'console'

Така че просто имайте предвид, че можете да се сблъскате с подобни проблеми.

person Stephan    schedule 05.08.2014
comment
Готино! Не знаех за spyder. Сега го отворих и изглежда страхотно. Благодаря! - person CodyBugstein; 06.08.2014
comment
И тук е така. Благодаря! - person Dave Kanter; 10.05.2017