Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Mencetak Tatasusunan NumPy Cantik Tanpa Notasi Saintifik dan Mengekalkan Ketepatan?

Bagaimanakah Saya Boleh Mencetak Tatasusunan NumPy Cantik Tanpa Notasi Saintifik dan Mengekalkan Ketepatan?

Patricia Arquette
Patricia Arquetteasal
2024-12-07 02:21:11846semak imbas

How Can I Pretty-Print NumPy Arrays Without Scientific Notation and Maintain Precision?

Anasusunan NumPy Cetakan Cantik: Mengelak Tatatanda Saintifik dan Memastikan Ketepatan

Tatasusunan NumPy biasanya dipaparkan dengan perpuluhan dalam tatatanda saintifik, menjadikannya sukar untuk ditafsir. Untuk memformat tatasusunan untuk kebolehbacaan, pertimbangkan penyelesaian berikut:

Menggunakan numpy.set_printoptions

Fungsi numpy.set_printoptions membolehkan anda mengubah suai pilihan pencetakan untuk tatasusunan. Dengan menetapkan ketepatan kepada bilangan tempat perpuluhan yang dikehendaki, anda boleh memformat terapung seperti yang dikehendaki. Selain itu, tetapan suppress kepada True mengalih keluar notasi saintifik untuk nombor kecil.

import numpy as np

x = np.random.random(10)
np.set_printoptions(precision=3, suppress=True)
print(x)  # Prints [0.073  0.461  0.689 ...]

Menggunakan Pengurus Konteks

NumPy 1.15.0 dan kemudiannya menyediakan pengurus konteks untuk numpy.printoptions. Dalam konteks ini, sebarang operasi cetakan akan menggunakan pilihan cetakan yang ditentukan.

with np.printoptions(precision=3, suppress=True):
    print(x)  # Within the context, options are set
print(x)  # Outside the context, options are back to default.

Mencegah Pembuangan Sifar Jejak

Untuk mengekalkan sifar tertinggal, gunakan parameter pemformat np .set_printoptions. Ini membolehkan anda menentukan fungsi format tersuai untuk setiap jenis data.

np.set_printoptions(formatter={'float': '{: 0.3f}'.format})
print(x)  # Prints [0.078  0.480  0.413 ...]

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencetak Tatasusunan NumPy Cantik Tanpa Notasi Saintifik dan Mengekalkan Ketepatan?. 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