2012-10-31 114 views
0

我需要製作一個便攜式應用程序來放置設備,並且我只想放置所需的模塊,因此不會有所有標準模塊,因此我需要查看我的應用程序需要什麼,但是如果該模塊未能導入某些內容,不能看到,因爲它給出了一個錯誤沒有被明確該模塊在什麼失敗:如何查看導入模塊中的導入失敗?

Traceback (most recent call last): 
    File "./packaging.py", line 30, in <module> 
    import simplejson 
ImportError: No module named simplejson 

有沒有辦法,看看究竟導入該模塊中失敗了呢?

+0

呃,你是什麼意思?我認爲錯誤是非常明確的:沒有這樣的模塊,你想導入。另外,stdlib在python2.7中有'json'模塊 – SilentGhost

+0

@SilentGhost正如我在問題中所提到的,我將python移到了一個設備上,但是隻有沒有標準lib,我需要並且想要逐個提取我的依賴關係,放在那裏只需要模塊,如果該模塊缺乏導入它就像這樣說,我也發生過這種情況也與minidom,但設法看看什麼模塊丟失 –

+0

,我告訴你,你可以使用標準庫模塊'json'而不是'simplejson'。在任何情況下,'ImportError'都會顯示你的依賴關係,所以我不明白你的問題。 – SilentGhost

回答

1

可能是因爲字符串/usr/lib/python2.7/dist-packages不在您的sys.path文件夾列表中,因此在嘗試導入模塊或程序包時不會搜索它。

1

你可以捕捉到的異常,就知道哪裏出了問題,並適當地處理它們:

try: 
    import simplejson 
except ImportError: 
    print "simplejson module not found" 
    #or do something else here, may be install that module 
2

錯誤意味着,進口import simplejson失敗,因爲有「[N] O模塊名爲simplejson」 。解決方案是簡單地安裝said module