RStudio with using Rmarkdown is also popular. Both workflows are language agnostic.
And it's meant to work with the RStudio IDE, so I get a much more seamless experience going between regular code and notebooks (although this is admittedly a more R-centric benefit, at least until and unless RStudio adds Python support outside of notebooks).
It's easy to share data between the R and python session, and calling python from R, or R from python is straightforward.