我正在开发一个图形算法库。在开发过程中,我经常需要绘制算法过程中生成的图形,用于调试。我使用matplotlib,所以在我的源代码中我需要import matplotlib。但是,我不希望matplotlib成为库的依赖项,因为库本身并不需要它。如何在开发过程中使用matplotlib,而不使其成为库的依赖?
import matplotlib
laik7k3q1#
您可以在try中包含plot命令
import matplotlib.pyplot as plt try: plt.plot(...) except NameError: # exception will occur if plt doesn't exist, which means you are in production. pass
或者,如果你不想使用异常,你可以检查plt是否在条件中定义。
plt
if plt: plt.plot(...)
您也可以定义一个debug标志,并检查该标志以了解您是处于调试模式还是生产模式,而不是检查每个库
debug
if debug: plt.plot(...)
当迁移到生产环境时,只需注解导入matplotlib的行,并将debug设置为False
# import matplotlib.pyplot as plt debug = False
1条答案
按热度按时间laik7k3q1#
您可以在try中包含plot命令
或者,如果你不想使用异常,你可以检查
plt
是否在条件中定义。您也可以定义一个
debug
标志,并检查该标志以了解您是处于调试模式还是生产模式,而不是检查每个库当迁移到生产环境时,只需注解导入matplotlib的行,并将debug设置为False