2016-07-05 1 views
-1

Можно ли попробовать исключение (или что-то еще), если модуль существует или нет? У меня есть код, (все они определены, просто не включены здесь):исключение, если модуль не существует

import matplotlib.pyplot as plt 
import numpy as np 

def scf: 
    A = np.array(plist, dtype="float") 
    np.savetxt("foo.dat", A, 
       delimiter=' ', fmt="%1.4e") 

    plt.plot(A[:, 0], A[:, 4], label="foo", linewidth="4.") 
    plt.show() 

Он пишет foo.dat, а также участки ее. Я пытаюсь достичь:

def scf: 
    A = np.array(plist, dtype="float") 
    # if matplotlib does not exists, write to file 
    np.savetxt("foo.dat", A, 
       delimiter=' ', fmt="%1.4e") 
    #else if matplotlib exists, show plot, dont write to file 
    plt.plot(A[:, 0], A[:, 4], label="foo", linewidth="4.") 
    plt.show() 

Могу ли я это сделать?

+1

Посмотрите здесь ... http://stackoverflow.com/questions/14050281/how-to-check-if-a-python-module-exists-without-importing-it – LordWilmore

ответ

0

Импорт модуля, который не существует, поднимет ImportError, который вы можете поймать, как любое другое исключение, с помощью блока try/except.