I think None is correct. If you don't specify a return value in Python, then a function returns None. I would expect that to happen in a Python block too. John ----------------------------------- Professor John Kitchin Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 @johnkitchin http://kitchingroup.cheme.cmu.edu On Mon, Feb 17, 2020 at 11:25 AM Jack Kamm wrote: > Hi, > > Below is a very small patch to Python session blocks, to make them > return a blank result (empty string) instead of None when there is no > return value. > > Normally I would push this myself, but since we are so close to 9.4, I > thought it prudent to mail a patch and let the maintainers handle it. It > would be nice to include in 9.4, but not a big deal if I've missed the > window. > > Now for an explanation of the patch: 9.4 changes Python session blocks > to fix several bugs and improve robustness overall [0]. However, there > is a cost to these fixes, which is that the session blocks can only > return a result when it is a top-level expression on the last line of > the block. If the last line is not a top-level expression, the block > would previously print "None". However, after some testing, I think this > is a little counter-intuitive, and it would be better if it returned a > blank (empty) result instead of "None". > > [0] https://lists.gnu.org/archive/html/emacs-orgmode/2020-01/msg00190.html > > Best, > Jack > > >