Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapa Bahagian Python 3 Mengembalikan Terapung Daripada Integer?

Mengapa Bahagian Python 3 Mengembalikan Terapung Daripada Integer?

Linda Hamilton
Lepaskan: 2024-12-11 10:50:11
asal
151 orang telah melayarinya

Why Does Python 3's Division Return a Float Instead of an Integer?

Teka-teki Bahagian Integer: Mengapa Terapung Daripada Integer?

Tingkah laku pembahagian integer Python baru-baru ini, di mana ia menghasilkan apungan dan bukannya integer, telah mencetuskan beberapa kekeliruan dalam kalangan pembangun. Peralihan ini menandakan perlepasan daripada versi sebelumnya yang mengembalikan integer untuk pembahagian integer.

Apabila membahagi 2 dengan 2 dalam Python 3, hasilnya ialah 1.0, nombor titik terapung. Tingkah laku yang diubah ini mungkin mengejutkan mereka yang terbiasa dengan versi terdahulu di mana operasi int/int menghasilkan integer.

Sebab yang mendasari perubahan ini berpunca daripada penggunaan Python terhadap operator pembahagian lantai //, yang kembali dengan jelas. hasil bagi integer. Untuk mengekalkan perbezaan ini, operator bahagian standard (/) telah diubah suai untuk mengembalikan apungan.

Akibat dan Penyelesaian

Perubahan ini mempunyai implikasi untuk kod yang bergantung pada integer pembahagian. Pembangun kini mempunyai dua pilihan:

  • Gunakan Operator Bahagian Lantai //: Untuk kes di mana pembahagian integer dikehendaki, pengendali // harus digunakan secara eksplisit.
  • Hantar Keputusan kepada Integer: Sebagai alternatif, hasil pembahagian boleh dibuang ke integer menggunakan fungsi int() untuk mendapatkan hasil bagi lantai.

Konteks Sejarah

Perlu diperhatikan bahawa tingkah laku semasa adalah pembalikan perubahan sebelumnya dalam Python 2.x, di mana pembahagian lalai kepada pembahagian lantai. Pembalikan ini didorong oleh PEP-238, yang memperkenalkan pengendali // untuk pembahagian lantai yang jelas dan mengubah suai pengendali bahagian standard untuk mengembalikan apungan.

Memahami perubahan sejarah ini adalah penting untuk pembangun yang berhijrah daripada versi Python yang lebih awal atau kod penyelesaian masalah yang bergantung pada pembahagian integer.

Atas ialah kandungan terperinci Mengapa Bahagian Python 3 Mengembalikan Terapung Daripada Integer?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan