How to set a default editable string for raw_input?

ifschleife picture ifschleife · Mar 23, 2011 · Viewed 46.3k times · Source

I'm using Python 2.7's raw_input to read from stdin.

I want to let the user change a given default string.

Code:

i = raw_input("Please enter name:")

Console:

Please enter name: Jack

The user should be presented with Jack but can change (backspace) it to something else.

The Please enter name: argument would be the prompt for raw_input and that part shouldn't be changeable by the user.

Answer

codefreak picture codefreak · Dec 3, 2013

You could do:

i = raw_input("Please enter name[Jack]:") or "Jack"

This way, if user just presses return without entering anything, "i" will be assigned "Jack".