Cách tốt nhất để mô phỏng điểm nổi chính xác đơn trong python là gì? (Hoặc các định dạng điểm nổi khác cho vấn đề đó?) Chỉ cần sử dụng ctypes?Cách chính xác để mô phỏng điểm nổi chính xác đơn trong python?
Trả lời
Nếu ứng dụng của bạn phù hợp với các mảng/ma trận, bạn có thể sử dụng NumPy với float32
Nếu numpy
(những gợi ý tuyệt vời của câu trả lời khác) không áp dụng cho bạn (ví dụ bởi vì bạn đang ở trong một môi trường mà không cho phép tiện ích mở rộng của bên thứ ba tùy ý), mô-đun array trong thư viện chuẩn Python cũng tốt - nhập mã 'f'
cung cấp cho bạn phao 32 bit. Bên cạnh đó và các phao chính xác kép (thông thường), không có gì nhiều cho "các định dạng điểm nổi khác" - bạn đã nghĩ gì? (ví dụ: gmpy
cung cấp hỗ trợ khiêm tốn của GMP cho các phao nổi có kích thước bit dài hơn, tùy ý - nhưng thực tế là khiêm tốn, ví dụ: không có chức năng trig).
làm thế nào về ctypes.c_float từ thư viện chuẩn?
Có thể sử dụng mô-đun struct
của Python để cắt ngắn phao 64 bit về độ chính xác của phao 32 bit.
Ví dụ:
>>> x = 1.1122334455667788
>>> x
1.1122334455667788
>>> struct.unpack('f', struct.pack('f', x))[0]
1.1122334003448486
Để làm phép tính chỉ với phao nổi 32-bit, bạn sẽ cần phải áp dụng hoạt động cắt ngắn này để kết quả của mọi hoạt động số học.
- 1. Điểm nổi chính xác kép trong CUDA
- 2. Thi đua nổi chính xác đơn trong Javascript (float32)
- 3. Thư viện cho điểm nổi chính xác trong .NET
- 4. Độ chính xác điểm nổi của tập hợp SQL
- 5. Kết cấu điểm nổi chính xác là gì?
- 6. Thư viện có độ chính xác cao điểm nổi Java
- 7. Thiết kế đúng mã C xử lý cả điểm nổi chính xác đơn và đôi?
- 8. Độ chính xác trong python
- 9. gì chính xác là điểm memoryview bằng Python
- 10. Hiển thị chính xác nổi (Android)
- 11. Cách chính xác để mô phỏng đệ quy để thử nghiệm một biểu mẫu là gì?
- 12. python trong django không được nhập một cách chính xác
- 13. Điểm nổi bật xác định và .NET
- 14. C++ vs Python chính xác
- 15. Làm cách nào để xác định chính xác cách viết hoa chính xác cho một từ?
- 16. tăng số điểm phao chính xác
- 17. Cách chính xác để xác thực đối tượng mô hình Django?
- 18. Fast float to int chuyển đổi và nổi điểm chính xác trên ARM (iPhone 3GS/4)
- 19. Python nhập chính xác như thế nào?
- 20. Cách chính xác để gói trong MVC4
- 21. Django FloatField trong ModelForm với 2 điểm chính xác
- 22. Cách đơn giản để mô phỏng mạng chậm trong python
- 23. Quy mô Chrome flash không chính xác
- 24. Vấn đề với hoạt động điểm chính xác trong C
- 25. Cách xác định xem 3 điểm có chính xác trong Z^2
- 26. Chủ đề màu sắc lạ/không chính xác trong trình mô phỏng thiết bị đầu cuối
- 27. Cách xác định chính xác PRINT_NOTIFY_INFO_DATA?
- 28. Cách dừng BackgroundWorker chính xác
- 29. Độ chính xác của phao nổi với printf
- 30. Cần trợ giúp mô phỏng chính xác Samsung Galaxy Nexus với AVD
Bạn có ý nghĩa gì khi "mô phỏng"? Đọc nổi từ các đốm màu nhị phân? Thực hiện toán học ở độ chính xác đơn và nhận được kết quả tương tự như một ngôn ngữ khác? (Nếu sau này, lưu ý rằng "float" toán học trong C trên x86 thực sự được đánh giá trong 80-bit và giảm xuống 32-bit khi nó được lưu trữ.) –