Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Python Mengendalikan Bahagian Integer, dan Bagaimana Saya Boleh Mendapatkan Keputusan Titik Terapung?

Bagaimanakah Python Mengendalikan Bahagian Integer, dan Bagaimana Saya Boleh Mendapatkan Keputusan Titik Terapung?

Barbara Streisand
Barbara Streisandasal
2024-12-14 09:00:20777semak imbas

How Does Python Handle Integer Division, and How Can I Get Floating-Point Results?

Bahagian Integer dalam Python

Dalam Python, pembahagian integer antara dua integer menghasilkan integer, walaupun hasilnya akan menjadi perpuluhan pecahan. Tingkah laku ini boleh mengejutkan mereka yang terbiasa dengan bahasa pengaturcaraan lain.

Contoh:

Pertimbangkan kod berikut:

>>> (20 - 10) / (100 - 10)
0

Di sini, kami akan menjangkakan hasilnya ialah 0.1111111111111111, kerana perbezaan antara 20 dan 10 ialah 10, dan perbezaan antara 100 dan 10 ialah 90. Walau bagaimanapun, Python menilai setiap bahagian pembahagian sebagai integer, menghasilkan 0. Memandangkan 0 dibahagikan dengan 90 sama dengan 0, jawapan akhir dibundarkan kepada 0.

Betulkan:

Untuk mendapatkan hasil yang diingini, anda boleh menghantar salah satu nombor ke apungan:

>>> (20 - 10) / float((100 - 10))
0.1111111111111111

Sebagai alternatif, anda boleh mengimport ciri masa hadapan "bahagian", yang mengubah tingkah laku pengendali "/" untuk sentiasa mengembalikan apungan:

>>> from __future__ import division
>>> (10 - 20) / (100 - 10)
-0.1111111111111111

Oleh memahami tingkah laku pembahagian integer lalai dalam Python, anda boleh mengelakkan keputusan yang tidak dijangka dan memastikan kod anda menghasilkan hasil yang diingini.

Atas ialah kandungan terperinci Bagaimanakah Python Mengendalikan Bahagian Integer, dan Bagaimana Saya Boleh Mendapatkan Keputusan Titik Terapung?. 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