我可以使用dtype来查找numpy数组的元素是字符串吗?

时间:2015-04-07 16:36:50

标签: python arrays numpy types

我有一个numpy数组,例如:

myArray = np.array(['a','bc'])

是否可以使用dtype找出其元素是否为字符串?

我能做的唯一方法就是检查myArray.dtype == 'S2',但我的问题是我事先并不知道我的元素中有多少个角色。

我可以使用类似myArray.dtype == 'str'的内容吗?

1 个答案:

答案 0 :(得分:3)

您可以使用issubdtype进行检查:

>>> np.issubdtype(myArray.dtype, str)
True

该函数检查给定的dtype是否在NumPy的type hierarchy中排在另一个下面。

或者,您可以直接检查dtype的字符代码。字符串类型包含代码'S'

>>> myArray.dtype.char
'S'