Soalan:
Python membuang ValueError apabila cuba menukar rentetan dengan koma sebagai beribu-ribu pemisah kepada integer menggunakan fungsi int(). Adakah terdapat kaedah yang lebih cekap untuk melaksanakan penukaran ini?
Jawapan:
Modul tempatan dalam Python menyediakan penyelesaian. Dengan menetapkan tempattempat kepada 'en_US.UTF-8', anda mendayakan tafsiran koma yang betul sebagai pemisah beribu-ribu.
import locale locale.setlocale( locale.LC_ALL, 'en_US.UTF-8' )
Dengan set tempattempat, anda boleh menggunakan locale.atoi() dan tempattempat. atof() berfungsi untuk menukar perwakilan rentetan kepada integer dan terapung, masing-masing:
locale.atoi('1,000,000') # Results in 1,000,000 locale.atof('1,000,000.53') # Results in 1,000,000.53
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Rentetan dengan Beribu-ribu Pemisah dengan Cekap kepada Nombor dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!