I wonder how Jupyter Notebook works with builtins? Suppose, I want to replace an internal function, for example input. But this only works within the cell. Although directly in IPython everything is okey (not without problems, but in general outside the cell the trick works). What's wrong with Jupyter?
The code for the experiment:
import builtins
builtins.input = lambda prompt, *, _input=input: print('Hello world!') or _input(prompt)