import IPython
audrey.feldroy.com
The experimental notebooks of Audrey M. Roy Greenfeld. This website and all its notebooks are open-source at github.com/audreyfeldroy/audrey.feldroy.com
# Get a Jupyter Notebook Filename From Itself
by Audrey M. Roy Greenfeld | Tue, Apr 8, 2025
When working in notebooks, you'll occasionally need to access the notebook's own filename. Here's code to do it, which I've verified works in Jupyter Notebook Classic.
The Trick: JS to Python Bridge
You can't get the notebook's name from Python. But you can get it from JavaScript, and then execute Python code to store it into a Python variable:
%%javascript IPython.notebook.kernel.execute('nbname = "' + IPython.notebook.notebook_name + '"')
IPython.notebook.kernel.execute()
is a JS method that tells the Jupyter kernel to execute a string of Python.
Verify It Worked
Let's print the Python variable we set via JS:
nbname
© 2024-2025 Audrey M. Roy Greenfeld