使用tqdm包,根据https://github.com/tqdm/tqdm/issues/375,根据jupyter笔记本[from tqdm import tqdm_notebook as tqdm
]或终端[{{1]是否需要进度条,需要导入不同的内容}}]。
我正在编写一个使用tqdm来显示进度条的脚本,但我不知道用户是否要在Jupyter笔记本或终端中使用该脚本。我怎样才能给它一些上下文感知,这样如果用户从jupyter笔记本调用脚本,那么它使用tqdm_notebook,否则它使用tqdm。
所以,问题是:如何检测脚本被调用的环境是否是Jupyter笔记本。
答案 0 :(得分:1)
import sys
sys.argv
Out[1]:
['/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/ipykernel_launcher.py',
'-f',
'/Users/patarapolw/Library/Jupyter/runtime/kernel-379556d7-b2ee-4f83-aa33-a8c783c4b4a3.json']
但是,如果我直接运行脚本,它会说文件名。
另见How can I check if code is executed in the IPython notebook?