My question is related to this. I am using Python 3.6 in Jupyter Notebook. My project directory is /user/project
. In this directory I'm building a number of models and each has its own folder. However, there is a common functions.py
file with functions that I want to use across all models. So I want to keep the functions.py
file in /user/project
but be able to call it from an .ipynb
file in /user/project/model1
, /user/project/model2
, etc... How can I do this?
A module is simply a text file named with a . py suffix, whose contents consist of Python code. A module can be imported into an interactive console environment (e.g. a Jupyter notebook) or into another module.
The most Pythonic way to import a module from another folder is to place an empty file named __init__.py into that folder and use the relative path with the dot notation. For example, a module in the parent folder would be imported with from .. import module .
py file), or Jupyter Notebook. Remember the file that contains the function definitions and the file calling the functions must be in the same directory. To use the functions written in one file inside another file include the import line, from filename import function_name .
There is no simple way to import python files in another directory. This is unrelated to the jupyter notebook
Here are 3 solutions to your problem
import sys sys.path.insert(0, '/path/to/application/app/folder') import file
You can create a local module by having an empty __init__.py
file in the folder you want to import. There are some weird rules regarding the folder hierarchy that you have to take into consideration.
You can create a module for the file you wish to import and install it globally.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With