Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa Kod Python Saya Melemparkan Ralat 'TypeError: input dijangka paling banyak 1 argumen, mendapat (lebih daripada 1)'?
Memahami "TypeError: input dijangka paling banyak 1 argumen, mendapat (lebih daripada 1)"
Dalam Python, apabila cuba mengumpulkan pengguna input melalui fungsi input(), anda mungkin menghadapi "TypeError: input dijangka paling banyak 1 argumen, mendapat (lebih daripada 1)." Mesej ini menandakan ketidakpadanan antara bilangan argumen yang diberikan kepada fungsi input() dan nilai jangkaannya.
Punca Ralat
Fungsi input() dijangka satu hujah, iaitu gesaan yang dipaparkan kepada pengguna. Walau bagaimanapun, anda sedang menyediakannya dengan berbilang hujah. Khususnya, anda cuba menghantar rentetan "Adakah", tekaan pembolehubah dan tanda soal "?".
Penyelesaian
Untuk menyelesaikan ralat ini, anda perlu meringkaskan berbilang hujah ini menjadi satu hujah. Terdapat dua cara untuk mencapai ini:
Pemformatan Rentetan:
Menggunakan sintaks rentetan f, anda boleh membenamkan pembolehubah terus ke dalam gesaan:
answer = input(f"Is it {guess} ?")
Penggabungan:
Sebagai alternatif, anda boleh menggabungkan rentetan dan pembolehubah secara manual:
answer = input("Is it " + str(guess) + "?")
Perbandingan dengan cetakan() Fungsi
Anda mungkin tersilap kelakuan ini dengan fungsi print(), yang membenarkan berbilang argumen. Fungsi print() akan menggabungkan semua nilai ke dalam satu rentetan sebelum mencetaknya. Walau bagaimanapun, fungsi input() hanya menerima satu hujah sahaja.
Atas ialah kandungan terperinci Mengapa Kod Python Saya Melemparkan Ralat 'TypeError: input dijangka paling banyak 1 argumen, mendapat (lebih daripada 1)'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!