Cara Menghuraikan Rentetan Berangka Dipisahkan Ruang dengan Berkesan ke dalam Senarai Integer
Tugas mengekstrak integer daripada rentetan nombor yang dipisahkan ruang mungkin mulanya nampak mudah. Walau bagaimanapun, untuk mencapai pelaksanaan yang mantap, beberapa pertimbangan timbul.
Memisahkan pada Ruang Putih
Satu pendekatan yang berdaya maju ialah menggunakan fungsi split() terbina dalam Python. Dengan membelah rentetan pada ruang, kita boleh mendapatkan senarai subrentetan yang mewakili setiap nombor individu:
"42 0".split() # ['42', '0']
Pendekatan ini mudah dan berkesan apabila berurusan dengan rentetan yang mengandungi hanya ruang tunggal antara nombor.
Menukar kepada Integer
Untuk menukar subrentetan kepada integer, kita boleh menggunakan fungsi map():
map(int, ["42", "0"]) # [42, 0]
Fungsi map() mengambil fungsi dan yang boleh diubah sebagai hujah. Dalam kes ini, fungsi adalah int, yang menukar setiap elemen dalam lelaran kepada integer. Dalam Python 2, map() mengembalikan iterable, manakala dalam Python 3 ia mengembalikan iterator malas. Untuk mendapatkan senarai integer, kita boleh menghantar hasil ke senarai menggunakan list():
list(map(int, ["42", "0"])) # [42, 0]
Sebagai alternatif:
Memisahkan rentetan pada ruang putih sahaja boleh tidak mencukupi dalam semua kes, terutamanya apabila berurusan dengan beberapa ruang berturut-turut. Sebagai alternatif, seseorang boleh menggunakan ungkapan biasa yang sepadan dengan semua jujukan digit, dan kemudian menukar padanan ini kepada integer menggunakan coretan kod yang diterangkan di atas.
Atas ialah kandungan terperinci Bagaimana untuk Menghuraikan Rentetan Berangka Dipisahkan Ruang ke dalam Senarai Integer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!