Đưa ra một mảng NumPy int32
, làm thế nào để tôi chuyển đổi nó thành float32
tại chỗ ? Về cơ bản, tôi muốn làm
a = a.astype(numpy.float32)
mà không sao chép mảng. Nó to.
Lý do để làm điều này là tôi có hai thuật toán cho việc tính toán a
. Một trong số chúng trả về một mảng int32
, cái còn lại trả về một mảng float32
(và điều này vốn có của hai thuật toán khác nhau). Tất cả các tính toán tiếp theo cho rằng đó a
là một mảng của float32
.
Hiện tại tôi thực hiện chuyển đổi trong một hàm C được gọi thông qua ctypes
. Có cách nào để làm điều này trong Python không?
ctypes
nhiều như "trong Python" như sử dụngnumpy
. :)