Mengedit Input dengan Nilai Lalai dalam Python
Apabila menerima input pengguna dengan fungsi input(), selalunya wajar untuk memberikan nilai lalai yang berfungsi sebagai pemegang tempat atau titik permulaan. Dalam kes ini, pengguna ingin menerima input untuk nama folder dengan nilai lalai "Muat turun" tetapi membenarkan pengguna mengeditnya dengan mudah dengan hanya menambah atau mengalih keluar aksara.
Input standard() dan raw_input( ) fungsi tidak menyokong tingkah laku ini di luar kotak. Walau bagaimanapun, pada sistem Linux, modul readline menawarkan penyelesaian.
Menggunakan Readline
Modul readline menyediakan fungsi penyuntingan baris lanjutan. Dengan mentakrifkan fungsi input tersuai yang menggunakan garis baca, anda boleh mencapai gelagat yang diingini. Berikut ialah contoh:
<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>
Dalam fungsi ini:
Penggunaan
Untuk menggunakan fungsi ini, cuma gantikan panggilan input() standard dengan fungsi rlinput():
<code class="python">folder = rlinput('Folder name: ', 'Download')</code>
Ini akan memaparkan gesaan "Nama folder: Muat turun" dengan teks praisi "Muat turun". Jika pengguna menekan enter tanpa membuat sebarang perubahan, nilai lalai akan disimpan sebagai "Muat turun". Jika pengguna ingin mengedit lalai, mereka hanya boleh menaip atau menambah aksara pada teks yang dipraisi.
Atas ialah kandungan terperinci Bagaimana untuk Menyediakan Nilai Lalai untuk Input Pengguna dengan Keupayaan Mengedit dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!