Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah saya boleh membundarkan nombor titik terapung kepada nombor tertentu angka penting dalam Python?

Bagaimanakah saya boleh membundarkan nombor titik terapung kepada nombor tertentu angka penting dalam Python?

Linda Hamilton
Linda Hamiltonasal
2024-11-12 13:05:021019semak imbas

How can I round floating-point numbers to a specific number of significant figures in Python?

Membundarkan Nombor kepada Angka Penting dalam Python

Apabila memaparkan nombor titik terapung dalam antara muka pengguna, adalah wajar untuk membundarkannya kepada bilangan angka bererti tertentu. Begini cara untuk mencapainya menggunakan fungsi terbina dalam Python dan kod tersuai.

Menggunakan Eksponen Negatif

Untuk membundarkan integer kepada kuasa tertentu 10, eksponen negatif boleh digunakan . Sebagai contoh, untuk membundarkan 1234 kepada ribu terdekat, anda boleh menggunakan:

round(1234, -3)

Ini menghasilkan 1000.0.

Fungsi Tersuai untuk Pembundaran

Untuk membundarkan nombor titik terapung kepada bilangan angka bererti tertentu, fungsi tersuai boleh ditakrifkan. Kod berikut mentakrifkan fungsi dipanggil round_to_1 yang membundarkan nombor kepada satu angka bererti:

from math import log10, floor

def round_to_1(x):
    return round(x, -int(floor(log10(abs(x)))))

Di sini, fungsi log10 digunakan untuk menentukan susunan magnitud x. Bahagian eksponen hasil dibundarkan ke bawah menggunakan lantai, dan penolakan nilai ini diserahkan kepada fungsi bulat, dengan berkesan membundarkan kepada kuasa 10 itu.

Contoh Penggunaan

Fungsi round_to_1 boleh digunakan untuk membundarkan nombor seperti berikut:

round_to_1(0.0232)  # returns 0.02
round_to_1(1234243)  # returns 1000000.0
round_to_1(13)  # returns 10.0
round_to_1(4)   # returns 4.0
round_to_1(19)  # returns 20.0

Nota:

Jika nombor yang dibundarkan lebih besar daripada 1, ia mungkin perlu ditukar kepada integer.

Atas ialah kandungan terperinci Bagaimanakah saya boleh membundarkan nombor titik terapung kepada nombor tertentu angka penting 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