有没有办法检测python脚本是从python或ipython shell运行,还是从命令行运行,例如python scrip.py?
我想使用它来设置我的matplotlib环境,并根据脚本的运行方式保存或显示数字.当我从命令行运行绘图脚本时,我希望脚本使用非标准的matplotlib后端并将图形保存到文件中plt.savefig(),但如果我从ipython shell中运行它In [1]: run scrip.py,我希望使用显示图形plt.show().
像这样的东西:
import matplotlib
if run_from_command_line:
matplotlib.use("non-standard-backend")
import matplotlib.pyplot as plt
if run_from_interactive_shell:
plt.ion() // Turn on interactive mode in matplotlib
// Do plotting
if run_from_command_line:
plt.savefig(filename)
else:
plt.show()
Run Code Online (Sandbox Code Playgroud)