我需要幫助,以獲得不導入模塊的名稱,而這樣做獲取已導入失敗
這樣的代碼是當前模塊的名稱:
#!/usr/bin/env python
bla=[]
try:
import os
import sys
import somethings
import blabla
except:
bla.append(NOT_IMPORTED_MODULE_NAME) # it should be here
if len(bla)>0:
exit("not imported:%s" % " ".join(bla))
謝謝你提前
您的代碼將在第一次失敗的導入時停止。你的堆棧跟蹤會告訴你哪個模塊會失敗。如果你真的想,你可以解析出字符串來獲取模塊名稱。但是,這可能是一個更好的方法爲你:http://stackoverflow.com/questions/14050281/how-to-check-if-a-python-module-exists-without-importing-it – idjaw
@idjaw所以有沒有辦法做到這一點? – script0r
我還沒有找到一個理由來做到這一點,所以我從來沒有真正分析過這一點。我發佈的鏈接看起來像我想做的事情。請記住,如果引發異常,您的代碼將停止運行,因此現在編寫代碼的方式會失敗,並且不會報告blabla。 – idjaw