I am trying to load a .py file into a single cell in a jupyter notebook. I tried using the command %load training.py and I received the error:
"ValueError: 'training.py' was not found in history, as a file, url, nor in the user namespace."
I have a folder that contains all of the .py files that I want to be able to load into jupyter in C:\Users\Jeffrey\CharmTagger. I then moved one of the .py files out of the folder and into C:\Users\Jeffrey and the %load command found that file. Is there anyway I can get jupyter to look in folders? I don't want to clutter my User folder. Is there anywhere else I can put these files so that they can still be found by %load?
You can always use the full path:
%load C:\Users\Jeffrey\CharmTagger\training.py
When you type:
%load training.py
IPython looks into the current working directory. You can find it with:
%pwd
The magic expression %load loads files relative to notebook current working directory.
The working directory for every new Jupyter notebook is set once started the notebook server.
It's the same directory from where you started the server (if didn't specified a different one with the proper option jupyter notebook --notebook-dir=some_directory).
You can get or change the working directory of your notebook with some system magics (special notebook functions) respectively:
%pwd (print working directory)
%cd some_folder/some_other_folder (change directory)
Let say you just started the notebook, and your current directory is your home directory and thus the output of %pwd will be something like
/home/some_user.
If you want to load files from a specific folder, i.e. /home/some_user/my_code (or if you are using Windows C:\Users\Some_user\my_code) you can type
(each in a separate notebook cell):
%cd my_code
and then:
%load my_script1.py
%load my_script2.py
Related
I'm starting a python project and when I'm opening a jupyter notebook in the directory I'm getting the following file. Normally there are other tabs such as kernel. Additionally I'm not able to run code using control + shift.
Jupyter notebooks are the files with extension .ipynb not with the extension .py which you are opening right now (main.py).
Look for a file with .ipynb extension and open it, it will run fine.
I want to change dir to the parent dir of my jupyter notebook.
I can not take the notebook path using os.path.basename(os.path.dirname(os.path.realpath(__file__))) as __file__ is not defined.
How can I get the dir of the ipynb file I am using in order to os.chdir() to it?
You can't
https://github.com/ipython/ipython/issues/10123
The reason is because you're always running in the kernel, and in theory multiple notebooks could connect to that kernel.
However - by default if you're starting a notebook, the current working directory is set to the path of the notebook. So the closest, is to call os.getcwd()
I just created the most boring published notebook example to demonstrate this, you can see that, this notebook reflects it's path, and this one that's in a subdirectory also reflects the proper path
I have a Jupyter Notebook where I frequently use the %cd magic command. At the top of this notebook I set a bookmark (%bookmark 'base_dir') so that I can easily return to my starting directory (via %cd -b 'base_dir').
Is there an easier way to return to the starting directory (i.e. the directory where the running *.ipynb exists)?
If you are just switching between the starting folder and subfolder, "%cd -"
will work.
Each time you run it it directs you to the previous directory, which means if you run it two times you will stay in the current directory.
I run Jupyter Notebook on a mac and I am trying to edit a notebook file from a git repo I am contributing to. However I am having trouble accessing the file from the Notebook interface.
Is there a way to access notebooks which are not in the default path on mac (navigation to arbitrary file locations works fine on windows) without changing the default directory to my git repo and without copying the file to my default directory and back every time I edit it?
It looks like direct navigation outside the path is impossible (Based on this post) but it seems that it should be possible to start the notebook from the given directory using the command line.
Things I've tried:
Directly typing the relative and absolute path into the web interface with respect to the tree (i.e. http://localhost:8889/tree/../../[path-to-file]
Renaming the file with the path as a prefix
Starting jupyter from the directory containing the notebook
... with no success as of yet.
Any help on this would be greatly appreciated.
it seems that it should be possible to start the notebook from the given directory using the command line
You can...
jupyter notebook /some/non-default/path
However, you can only reach sub-directories of that path with Jupyter
Starting jupyter from the directory containing the notebook
That should also work
If you python code needs to read files that are in parent directories, relative paths still resolve fine within the notebook kernel.
I'm trying to set a custom starting directory in Jupyter Notebook. I have edited jupyter_notebook_config.py.
Removed # from line "c.NotebookApp.notebook_dir =", added parameter:
c.NotebookApp.notebook_dir = u'c:\\my\\chosen\\directory'.
But still doesn't work, console coming up with error, and jupyter starting in the default home directory.
I'm using Windows server 2008. According to the manuals, it should work.
Does anyone have a suggestion about my problem?
The followings steps work perfectly for me on Windows:
First find which directory Jupyter is looking in for your config file:
jupyter --config-dir
If there is no jupyter_notebook_config.py file in that directory, generate one by typing:
jupyter notebook --generate-config
Then edit the jupyter_notebook_config.py file and add something like:
## The directory to use for notebooks and kernels.
c.NotebookApp.notebook_dir = 'c:\\users\\rsignell\\documents\\github'
Then start your jupyter notebook from any directory:
jupyter notebook
and it will start in the directory you specified.
For more info see: http://jupyter-notebook.readthedocs.io/en/latest/config.html
Microsoft Windows
Open dos command line by typing cmd on windows explorer address bar. This will open command prompt with current path set to current folder. Type jupyter notebook --notebook-dir=%CD% on commandline to start jupyter notebook (ipython notebook) with current directory as notebook's starting directory
I also had the problem, and editing jupyter configuration file didn't work either.
My workaround is to make a batch file that goes to a specified directory, then start jupyter notebook from that directory.
You can use notepad to write the batch file, just save it as an all files and specify the extension as .bat
An easy way is also available from DOS prompt using copy con. First, access command prompt (usually by typing "cmd" and enter). Then:
copy con startjupyter.bat
after that you can specify your directory and start notebook from there, for example if your directory is D:\python_codes :
d:
cd python_codes
jupyter notebook
After that, save the file using CTRL+Z and Enter.
You can run the batch file by calling the name (startjupyter), or click it. For the latter, maybe put it in your desktop for easy access.
I had also problems with the solutions given here. My solution was quick and dirty then, but it works with Windows. I made a batch-file:
cd C:\[starting Directory]
jupyter notebook
stop
You can start Jupyter with a defined directory when you use different batch-files. For example:
cd C:\datascience
or
cd C:\browsergame