Home >Backend Development >Python Tutorial >How to Customize Default Values for Input in Python?
Customizing Default Values for Input in Python
In Python, the default input command (input()) allows you to capture user input. However, you may want to provide a default value that the user can edit or accept.
Surprisingly, the standard input functions, input() and raw_input() lack this feature. Here's a solution that leverages the readline module.
The readline Module
If you're working in a Linux environment, you can utilize the readline module to create a custom input function. The readline module offers line editing and allows you to prefill the input field.
Defining a Custom Input Function
Here's how you can define a custom input function that takes a prompt and an optional prefill value:
<code class="python">import readline def rlinput(prompt, prefill=''): readline.set_startup_hook(lambda: readline.insert_text(prefill)) try: return input(prompt) # or raw_input in Python 2 finally: readline.set_startup_hook()</code>
Usage
To use this custom input function, simply call it like this:
<code class="python">folder_name = rlinput('Folder name: ', 'Downloads')</code>
This code will display a prompt asking for a folder name. It will initially display "Downloads" in the input field, and the user can edit it or press Enter to accept the default.
The above is the detailed content of How to Customize Default Values for Input in Python?. For more information, please follow other related articles on the PHP Chinese website!