How to give jupyter cell standard input in python?

Question:

I am trying to run a program on a jupyter notebook that accepts user input, and I cannot figure out how to get it to read standard input. For example, if I run the code with shift-enter:

a = input()
print(a)

the cell indicates it is running, but does not accept input from me. How do I get it to accept input?

Asked By: Alex

||

Answers:

Restarted my computer, and everything worked fine. No idea what happened…

Answered By: Alex

Probably you hit Shift-Enter a second time without completing the first input with Enter, so the kernel was always waiting until the first command completed, before executing it again. If you use in the menu

“Kernel”,
“Interrupt”,

all active commands are stopped (including the second execution of the box) and the problem should be solved without restarting the computer (or the browser / the kernel).

Answered By: naeschdy

Use the raw_input() (for Python 2) or input() (for Python 3) methods.

Example code:

a = raw_input()
print(a)

Example notebook:

Answered By: Rahul Tripathi

use raw_input instead of input if you are using python 2 version. if u still getting same problem then,

click on kernel then “restart and run all”
and try to run the code again.
this will fix it.

Answered By: user8403237

I came across the same problem, using the input in jupyternotebook, it blocks the execution and it does not work until restarting the program, so I added a print () after each input and my program is working.

Answered By: Andrea Longarini

You are doing it right, you ony have to restart the kernel (over the Run button)

Answered By: Santiago
Categories: questions Tags: , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.