While I can see the value of interactive programming with Jupyter notebooks, I have found coding in the browser to be immensely frustrating. Part of it is having to learn a whole new set of keyboard shortcuts, but even then the editing experience leaves a lot to be desired. Refactoring across multiple cells is particularly painful.
This evening I tried using the new “data science” features in the VSCode Python extension and so far I’m really liking it. It spins up a Jupyter server behind the scenes (or you can connect to a remote one) so it works just like a notebook but you get to stay in VSCode. Cell output appears in a parallel window which I think I actually prefer as it avoids the problem where running a cell causes the source to scroll out of view.
I think PyCharm has a similar feature but only in the paid version.