Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa Bahagian Integer Python Mengembalikan 0 Daripada Nombor Titik Terapung?

Mengapa Bahagian Integer Python Mengembalikan 0 Daripada Nombor Titik Terapung?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-25 03:30:13268semak imbas

Why Does Python's Integer Division Return 0 Instead of a Floating-Point Number?

Memahami Pembahagian Integer dalam Python

Dalam bidang pengaturcaraan Python, pembahagian kadangkala boleh membawa kepada hasil yang tidak dijangka, terutamanya apabila bekerja dengan keseluruhan nombor. Soalan ini meneroka mengapa pengiraan pembahagian mudah seperti (20-10) / (100-10) menilai kepada 0 dan bukannya 0.11111111111111111 yang dijangkakan.

Penjelasan terletak pada tingkah laku pembahagian integer Python, yang memotong hasilnya kepada integer secara lalai. Dalam contoh ini, kedua-dua (20-10) dan (100-10) dinilai sebagai integer. Apabila melakukan pembahagian, hasilnya juga dibuang ke integer, yang tidak meninggalkan bahagian pecahan. Akibatnya, jawapan muktamad 0 diperolehi.

Untuk mendapatkan hasil titik terapung yang diingini, sekurang-kurangnya satu daripada operan dalam pembahagian hendaklah ditukar secara eksplisit kepada apungan. Sebagai alternatif, gelagat pembahagian Python 3.x boleh diterima pakai dalam Python 2.x dengan mengimport daripada bahagian import __future__. Ini memaksa pengendali / untuk sentiasa mengembalikan apungan, tanpa mengira jenis operan.

Dengan memahami nuansa pembahagian integer dalam Python, pembangun boleh mengelakkan keputusan yang tidak dijangka dan memastikan kod mereka menghasilkan pengiraan yang dimaksudkan.

Atas ialah kandungan terperinci Mengapa Bahagian Integer Python Mengembalikan 0 Daripada Nombor 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