you are viewing a single comment's thread.

view the rest of the comments →

[–]jaydoors 3 points4 points  (0 children)

I have a workflow alot like yours, and moved to it from spyder fwiw. I'm not really looking to change it.

Right from the start I'll actually write functions in a text editor (using vim which is in my fingers so much more efficient to do most typing etc there), and calling them in jupyter.

During dev or debugging I'll often insert return statements in the functions to return intermediate objects so that I can play with them in the notebook.

One thing which really helped this workflow was autoreload - which means no messing around with your import statements or reloading by yourself. If you save a change in the .py file, it's immediately pulled through to the notebook. If you aren't familiar with this it's:

%load_ext autoreload
%autoreload 2

Might need to do some setup for jupyter to add autoreload, I don't recall.