Menentukan Input Numerik daripada Input Rentetan
Dalam banyak aplikasi pengaturcaraan, adalah perlu untuk mengesahkan input pengguna dan memastikan ia mematuhi data yang dijangkakan jenis. Satu senario biasa ialah menyemak sama ada input rentetan mewakili nombor yang sah.
Kaedah Tradisional
Salah tanggapan biasa ialah menggunakan fungsi type() untuk mengesahkan jenis input. Walau bagaimanapun, pendekatan ini gagal kerana input sentiasa mengembalikan rentetan, tanpa mengira nilai sebenar yang dimasukkan oleh pengguna.
Kaedah Cuba-Kecuali
Pendekatan yang lebih dipercayai adalah dengan gunakan blok try-except untuk cuba menukar rentetan input kepada integer. Jika penukaran berjaya, ini menunjukkan bahawa input ialah nombor. Jika tidak, pengecualian dinaikkan, menunjukkan bahawa input bukan nombor yang sah.
try: val = int(userInput) except ValueError: print("That's not an int!")
Pengecualian ValueError dinaikkan apabila penukaran kepada integer gagal, biasanya disebabkan input bukan nilai angka yang sah .
Selain kaedah di atas, terdapat teknik lain untuk menyemak sama ada rentetan ialah nombor, seperti menggunakan ungkapan biasa atau memanfaatkan anotasi jenis dalam moden bahasa. Walau bagaimanapun, blok cuba-kecuali kekal sebagai pendekatan yang mudah dan berkesan dalam banyak situasi.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menentukan dengan Boleh Dipercayai jika Input Rentetan Mewakili Nombor Sah dalam Pengaturcaraan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!