5 ms·
I have never understood why the "In[5]" and "Out[5]" in jupyter have to be so prominent, even in a output like this.
by petters 7y ago
I have never understood why the "In[5]" and "Out[5]" in jupyter have to be so prominent, even in a output like this.
- t1amat 7y agoIt seems useful to denote REPL input vs output, and to be able to identify output relating to input.
- petters 7y agoSure, but the [5] feels unnecessary in a finished document like this. I mean, the output should be right after the input anyway, right?
- mkl 7y agoIt's so it's easy to refer to things, like equation numbers in a maths book, or line numbers in code. E.g. people talking about someone's notebook here on HN can be specific and clear.
- smcmurtry 7y agoThe numbers track the order that the cells were executed in. So, strictly speaking, you need the numbers to be able to reproduce the output of the notebook's author. However, I think it's bad practice and pretty uncommon to publish a notebook where you need to execute the cells out of order. So most of the time the numbers aren't useful.
- analog31 7y agoIndeed, and the line numbers are a warning that you might have an order-of-execution bug lurking somewhere.
- lallysingh 7y agoAgreed. They should be (5) Input: / Output:. Where input and output are on the same level of indentation under (5).
- wodenokoto 7y ago_5 is a magic variable with the value of the output from cell 5. _ refers to the last output. Super handy when working interactively.
- numlocked 7y agoOh my god. I have used Jupyter notebooks for 7 years and never knew this. I just had to fire one up to verify -- and yep; exactly as described. How amazing! Thank you!
- spondyl 7y agoI believe the _5 syntax is specific to Jupyter, but in Python, the output of the last statement you execute is bound to _ For example, if you simply enter 4 into a Python REPL, printing _ will also print 4 It's really handy if you call a long statement in the REPL and forget to save the output to a variable I wrote about it once if you'd like to see some better examples: https://utf9k.net/blog/lost-python-results/ https://utf9k.net/blog/lost-python-results/
- ps101 7y agoYou just blew my mind.
- petters 7y agoI knew this, which may be handy when developing (assigning variables is superior IMO though) But in final output like this? I don't like it.
- wodenokoto 7y agoNo, you should not use output-references in code you share with people, but in my opinion it is one of the main reasons why jupyter notebooks in general put a large emphasis on displaying cell numbers
- hemanta212 7y agoPeople working with notebooks find it useful. You can remove it with one line of javascript though.