numpy.char.asarray#

char.asarray(obj, itemsize=None, unicode=None, order=None)[source]#

将输入转换为 chararray,仅在必要时复制数据。

与 dtype 为 bytes_str_ 的 NumPy 数组相比,此类别增加了以下功能:

  1. 索引时,值会自动移除末尾的空白字符

  2. 比较值时,比较运算符会自动移除末尾的空白字符

  3. 矢量化字符串操作以方法(例如 chararray.endswith)和中缀运算符(例如 +*%)的形式提供

参数:
obj字符串或类似 Unicode 的数组
itemsize整型,可选

itemsize 是结果数组中每个标量的字符数。如果 itemsize 为 None,并且 obj 是一个对象数组或 Python 列表,则 itemsize 将自动确定。如果提供了 itemsize 并且 obj 的类型是 `str` 或 `unicode`,则 obj 字符串将被分块为 itemsize 大小的片段。

unicode布尔型,可选

当为 true 时,结果 chararray 可以包含 Unicode 字符;当为 false 时,只能包含 8 位字符。如果 `unicode` 为 None 并且 obj 是以下之一:

  • 一个 chararray

  • 一个类型为 str_unicode_ 的 ndarray

  • 一个 Python `str` 或 `unicode` 对象,

则输出数组的 Unicode 设置将自动确定。

order{'C', 'F'},可选

指定数组的顺序。如果 `order` 是 'C'(默认),则数组将采用 C 连续顺序(最后一维索引变化最快)。如果 `order` 是 'F',则返回的数组将采用 Fortran 连续顺序(第一维索引变化最快)。

示例

>>> import numpy as np
>>> np.char.asarray(['hello', 'world'])
chararray(['hello', 'world'], dtype='<U5')