python - jupyter笔记本可以找到自己的文件名吗?

标签 python jupyter-notebook jupyter-lab python-os

jupyter 笔记本是否可以获取自己文件的名称,类似于我们从 python 脚本中执行的操作?

os.path.basename(__file__) 似乎不起作用,至少对 jupyterlab 上的我来说是如此

sys.argv[0] 返回 my_home/anaconda3/lib/python3.6/site-packages/ipykernel_launcher.py

最佳答案

我发现的唯一方法是通过 JavaScritp,如下所示 this answer .

紧凑形式是这样的单元格:

%%javascript
IPython.notebook.kernel.execute(`notebookName = '${window.document.getElementById("notebook_name").innerHTML}'`);

之后,您将获得变量 notebookName ,其名称出现在 页面顶部。

更好的解决方案可能是使用IPython.notebook.notebook_name:

%%javascript
IPython.notebook.kernel.execute(`notebookName = '${IPython.notebook.notebook_name}'`);

它为您提供扩展名为.ipynb的名称

关于python - jupyter笔记本可以找到自己的文件名吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52691468/

相关文章:

python - 如何在虚拟环境中使用 pip nodjs 安装 jupyterlab-plotly labextension?

python - 无法使用 python 在 pi 上安装 Bower 未找到兼容版本 : bower

python - 文本解析 - 日期识别器

ipython - 在jupyter笔记本中删除后释放内存

python - 模块未找到错误: No module named 'tensorflow' ?

python - IPython 笔记本 : code reuse

python - 关闭浏览器选项卡后保持 Jupyter Notebook 运行

python - JupyterLab 中 Plotly 的 Right 扩展名是什么?

python - selenium ActionChains 缺少执行

python - 如何从多列构建索引并设置为列 pandas 数据框?