2013-10-14 124 views
-2

我真的幾乎放棄嘗試創建一個導入導出模塊插件到Blender 2.68,它似乎是一個不可逾越的python問題(Blender使用python 3.3)。 我看到很多關於這個主題的stackoverflow的問題,但他們都沒有回答我的問題。我的腳本 部分:Blender ImportError:無法導入名稱

if "bpy" in locals(): 
    import imp 
    imp.reload(xplane_ui) 
    print ("xplane_ui reloaded.") 
    imp.reload(explane_import) 
    print ("All modules reloaded.") 

else: 
    import bpy 
    from io_explane import xplane_ui 
    print ("xplane_ui imported.") 
    from io_explane import explane_import #this is line 47 
    print ("All modules imported") 

我增加了額外的打印線,看看發生了什麼。 以下是追蹤結果:

Read new prefs: C:\Users\BT\AppData\Roaming\Blender Foundation\Blender\2.68\config\userpref.blend 
found bundled python: C:\blender-2.68a-windows32\2.68\python 
xplane_ui imported 
All modules imported 
xplane_ui imported. 
Traceback (most recent call last): 
    File "C:\blender-2.68a-windows32\2.68\scripts\modules\addon_utils.py", line 294, in enable 
    mod = __import__(module_name) 
    File "C:\blender-2.68a-windows32\2.68\scripts\addons\io_explane\__init__.py", line 47, in <module> 
    from io_explane import explane_import 
ImportError: cannot import name explane_import 

這太奇怪了。我認爲python從上到下發展,但它會如何通過 第46,47和48行進行,然後改變第47行的決定,並宣佈明顯完成後無法做到這一點? python是一種無用的程序語言,或者攪拌機壞了,或者兩者都有。無論哪種方式,錯誤捕獲例程是非常無益的。

+0

我應該提到我不需要文件xplane_ui。我故意添加該文件來測試它,看來blender或python會導入一些文件,但不導入其他文件。我也用Komodo Edit檢查了被拒絕的文件explane_import,並且沒有錯誤。一分鐘之後,神祕感變得​​越來越大。 – user2349655

+0

嘗試插入另一個知道從另一個插件良好的文件。它裝載正常。 然後嘗試將這個文件重命名爲explane_import並且它仍然加載OK。 這表明真正的問題是攪拌器而不是python由於內容中的某些內容而拒絕我的文件。 – user2349655

+0

結論是我試圖導入的文件包含混合器被拒絕的數據。這不是一個python問題。這個問題可能被刪除,因爲它可能對其他用戶沒有幫助。 – user2349655

回答

1

我不知道攪拌機,但是是否應該導入xplane_import

+0

啊謝謝。我錯過了。它應該在我的問題的每個地方閱讀explane_import。我將代碼和文件名更改爲xplane_import,以便獲得不同的結果,但得到相同的結果。 – user2349655

相關問題