Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menukar Rentetan dengan Koma dan Titik kepada Terapung dalam Python?

Bagaimana untuk Menukar Rentetan dengan Koma dan Titik kepada Terapung dalam Python?

Patricia Arquette
Patricia Arquetteasal
2024-12-01 10:36:08287semak imbas

How to Convert a String with Commas and Dots to a Float in Python?

Menukar Rentetan dengan Titik dan Koma kepada Terapung dalam Python

Masalah

Bagaimana kita boleh menukar rentetan seperti "123,456.908" menjadi apungan seperti 123456.908 dalam Python?

Penyelesaian: Menggunakan Perkhidmatan Penyetempatan

Perkhidmatan penyetempatan Python membolehkan kami mengendalikan setempat-spesifik penukaran.

Petempatan Lalai

Petempatan lalai menggunakan tetapan "C", yang tidak mengambil kira konvensyen pemformatan serantau. Oleh itu, secara lalai, atof(rentetan):

    Mentafsir koma sebagai pemisah perpuluhan.
  • Tidak mengendalikan ribuan pemisah.
Untuk membetulkannya , kita perlu menetapkan tempat setempat secara eksplisit agar sepadan dengan data asal.

Menggunakan Tempatan daripada Persekitaran

Kami boleh menggunakan setlocale(LC_ALL, '') untuk membaca tetapan tempat pilihan pengguna daripada persekitaran. Ini membolehkan kaedah yang menyedari setempat seperti locale.atof mengendalikan ribuan pemisah dengan betul.

Menetapkan Tempatan Secara Eksplisit

Kami juga boleh menetapkan tempat tertentu menggunakan setlocale( LC_NUMERIC, rentetan_tempat). Ini membolehkan pemformatan dan penghuraian setempat untuk nombor sahaja.

Kaveat

Menetapkan setempat boleh menjejaskan tingkah laku program secara global dan tidak selamat untuk rangkaian. Ia perlu dilakukan dengan berhati-hati dan berhemat. Secara umumnya lebih disukai untuk menggunakan perpustakaan pengantarabangsaan untuk pengendalian data bebas setempat.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Rentetan dengan Koma dan Titik kepada Terapung dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn