Will the REPL allow you to easily edit function definitions and then reinterpret them?
But if you do use libraries instead of just a huge mess of notebooks, you're stuck if you want to change the code in a well-supported way. You can ask your notebook to monkey-patch the code (which is an even bigger mess), or you can use an unreliable magic extension, "%autoreload".
%load_ext autoreload
autoreload 2
it'll reload functions from any module you edit each time you run a new command.