2015-10-17 4 views
1

, когда я пытаюсь запустить свой скрипт в Blender:Blender - импорт панда ImportError: Нет модуль с именем панда

import bpy 
import pandas as pd 

datafr = pd.read_table("/Users/Admin/Desktop/Python/Programming/storage_ocp_ode.csv", delimiter = ",", index_col = 0) 
... 

Я получаю ImportError: Нет модуль с именем панда.

Traceback (most recent call last): 
File "/Users/Admin/Desktop/watertank1.blend/storageobject_flow.py", line 6, in <module> 
ImportError: No module named 'pandas' 
Error: Python script fail, look in the console for now... 

Но когда я использую командную строку и импорта панд есть, он работает

Python 3.4.3 |Anaconda 2.3.0 (x86_64)| (default, Mar 6 2015, 12:07:41) 
[GCC 4.2.1 (Apple Inc. build 5577)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import pandas 
>>> 

I'm с помощью блендера 2,76 на Mac с OS X 10.11.

+0

Если [этот ответ] (http://blender.stackexchange.com/a/5289/935) не помогает тогда [этот ответ] (http://blender.stackexchange.com/a/30517/935) дает немного более подробную информацию. Вы можете догадаться, что вы смотрите на 'sys.path', что вы можете добавить дополнительные пути для поиска. – sambler

+0

Спасибо за советы: 'sudo ln -s /Users/Admin/anaconda/lib/python3.4/site-packages/pandas/Applications/blender.app/Contents/Resources/2.76/scripts/ modules/pandas' После этого мне пришлось делать то же самое с numpy, dateutil, six.py и pytz, но теперь все работает отлично! – qube13

ответ

2

Per the docs:

The Blender releases distributed from blender.org include a complete Python installation on all platforms, this has the disadvantage that any extensions you have installed in your systems Python wont be found by Blender. (my emphasis)

There are 2 ways around this:

  • удалить Blender Python подкаталог, Blender будет Откат на Python и использование систем, которые вместо того, чтобы .. предупреждение:

    The Python version must match the one that Blender comes with. 
    
  • скопировать расширения в подкаталог Pender в Blender, чтобы Blender мог получить к ним доступ, вы также можете скопировать всю установку Python в подкаталог Blenders, заменив его Блендер идет с. Это работает до тех пор, пока совпадают версии Python, и пути создаются в одинаковых относительных местоположениях. Для этого преимущество состоит в том, что вы можете перераспределить этот пакет другим пользователям с Blender и/или игровым игроком, включая любые расширения, на которые вы полагаетесь.

+0

Спасибо, я попробовал свою первую возможность, и теперь у меня есть этот массаж ошибки: Traceback (самый последний вызов последнего): Файл «/Users/Retter/Desktop/watertank1.blend/storageobject_flow.py», строка 6, в Файл "/Applications/blender.app/Contents/Resources/2.76/python/lib/python3.4/site-packages/pandas/__init__.py", строка 7, в из pandas import hashtable, tslib, lib Файл «pandas/src/numpy.pxd», строка 157, в init pandas.hashtable (pandas/hashtable.c: 38262) ValueError: numpy.dtype имеет неправильный размер, попробуйте перекомпилировать Ошибка: сбой сценария Python, посмотрите консоль на данный момент ... @unutbu – qube13

+0

У вас есть идея, как это решить? – qube13

+0

Я думаю, это означает, что Pandas был скомпилирован против более новой версии NumPy, чем версия NumPy, установленная в вашей установке blender. См. Http://stackoverflow.com/a/18369312/190597, https://github.com/pydata/pandas/issues/7517, http://stackoverflow.com/q/24122850/190597. – unutbu

0

Мое решение симлинки:

sudo ln -s /Users/Admin/anaconda/lib/python3.4/site-packages/pandas /Applications/blender.app/Contents/Resources/2.76/scripts/modules/pandas 

После этого я должен был сделать то же самое с NumPy, dateutil, six.py и pytz, но теперь он отлично работает!

Смежные вопросы