Mengisih Rentetan Secara Berangka
Mengisih senarai rentetan yang mengandungi aksara berangka dalam Python boleh membawa kepada hasil yang tidak dijangka jika tidak dikendalikan dengan betul. Untuk mencapai gelagat pengisihan yang diingini, rentetan perlu ditukar kepada nilai berangka sebelum menggunakan fungsi isihan.
Dalam contoh yang diberikan, pengguna cuba mengisih senarai "nombor" rentetan dengan menukarnya kepada integer menggunakan gelung. Walau bagaimanapun, ini hanya menukar rentetan kepada integer dalam gelung dan senarai asal1 kekal tidak berubah.
Untuk mengisih senarai dengan betul secara berangka, ikut langkah berikut:
list1 = ["1", "10", "3", "22", "23", "4", "2", "200"] list1 = [int(x) for x in list1]
list1.sort()
Ini akan menghasilkan senarai diisih: ['1', '2', '3', '4', '10', '22', ' 23', '200'].
Sebagai alternatif, fungsi kekunci boleh digunakan untuk mengisih senarai berdasarkan nilai berangka setiap rentetan tanpa menukarnya kepada integer:
list1 = ["1", "10", "3", "22", "23", "4", "2", "200"] list1.sort(key=int)
Ini akan menghasilkan tertib diisih yang sama seperti sebelumnya.
Atas ialah kandungan terperinci Bagaimana untuk Mengisih Senarai Rentetan Secara Numerik dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!