我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

本文主要表述的观点就是:ndarraydtype,对元素内容的表现,是有比较重要的作用的。而且,它们的类型是可以通过.astype()进行修改的。但是,类型的写法,有传统的写法,也有基于np.的写法,写法很多很杂乱。直接看例子即可。

苏南大叔:python教程,如何利用 np.astype() 改变 ndarray 的 dtype? - 改变dtype
python教程,如何利用 np.astype() 改变 ndarray 的 dtype?(图1-1)

苏南大叔的“程序如此灵动”博客,记录苏南大叔的代码编程经验文章。测试环境:win10python@3.12.0numpy@1.26.1。数据类型并不是很全,仅供参考。

字符型

import numpy as np
arr = np.array([1, 2, 3])
_arr = arr.astype(str)        # ['1' '2' '3'] <U11
print(_arr,_arr.dtype)
_arr = arr.astype(np.str_)    # ['1' '2' '3'] <U11
print(_arr,_arr.dtype)
_arr = arr.astype(np.string_) # [b'1' b'2' b'3'] |S11
print(_arr,_arr.dtype)

布尔型

import numpy as np
arr = np.array([1, 1, 0])
_arr = arr.astype(bool)       # [ True  True False] bool
print(_arr,_arr.dtype)
_arr = arr.astype(np.bool_)   # [ True  True False] bool
print(_arr,_arr.dtype)

整数型

import numpy as np
arr = np.array([1.1, 2.2, 3.3])
_arr = arr.astype(int)         # [1 2 3] int32
print(_arr,_arr.dtype)
_arr = arr.astype(np.int64)    # [1 2 3] int64
print(_arr,_arr.dtype)

浮点型

import numpy as np
arr = np.array([1, 2, 3])
_arr = arr.astype(float)       # [1. 2. 3.] float64
print(_arr,_arr.dtype)         
_arr = arr.astype(np.float64)  # [1. 2. 3.] float64
print(_arr,_arr.dtype)

相关文章

下面的文章里面,也可以显示,使用np.astype()改变数据类型的必要性:

结语

更多苏南大叔的python经验文章,请参考:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   python