Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa Pembahagian Integer dalam Python 3 Mengembalikan Terapung, dan Bagaimana Saya Boleh Mendapatkan Keputusan Integer?

Mengapa Pembahagian Integer dalam Python 3 Mengembalikan Terapung, dan Bagaimana Saya Boleh Mendapatkan Keputusan Integer?

Patricia Arquette
Patricia Arquetteasal
2024-12-11 10:29:14622semak imbas

Why Does Integer Division in Python 3 Return a Float, and How Can I Get an Integer Result?

Teka-teki Pembahagian: Integer Membahagi kepada Perpuluhan dalam Python 3

Dalam Python 3, melakukan pembahagian integer (cth., 2/2) secara tidak dijangka menghasilkan apungan (1.0) bukannya integer. Tingkah laku ini berbeza daripada versi Python terdahulu yang mana pembahagian integer menghasilkan hasil integer.

Asal Anjakan

Perubahan ini diperkenalkan dalam Python 3 untuk menyelesaikan kekaburan dan meningkatkan ketekalan matematik. Sebelum Python 3, pembahagian integer dalam Python 2 berkelakuan berbeza, membulatkan ke bawah kepada integer terdekat (cth., 2/2 menghasilkan 0).

Mengatasi Dilema

Untuk menangani isu ini, Python 3 memperkenalkan operator // untuk pembahagian lantai, yang memastikan pembahagian integer dan mengembalikan hasil bulat ke bawah (cth., 2//2 menghasilkan 1).

Pengesyoran

Sebagai amalan terbaik, sentiasa gunakan operator // untuk pembahagian lantai dalam Python 3. Ini memastikan anda memperoleh hasil integer yang dimaksudkan. Casting tidak diperlukan kerana operator // secara eksplisit melakukan pembahagian lantai.

Penerokaan Lanjut

Untuk maklumat lanjut, rujuk PEP-238: Menukar Operator Bahagian. Dokumen ini memperincikan rasional di sebalik perubahan dan memberikan cerapan tambahan.

Atas ialah kandungan terperinci Mengapa Pembahagian Integer dalam Python 3 Mengembalikan Terapung, dan Bagaimana Saya Boleh Mendapatkan Keputusan Integer?. 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