numpy.char.asarray#

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

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

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

  1. 索引值时会自动去除末尾的空格。

  2. 比较运算符在比较值时会自动去除末尾的空格。

  3. 向量化字符串操作作为方法提供(例如 chararray.endswith)和中缀运算符(例如 +*%)。

参数:
objstr 或类似 unicode 的数组
itemsizeint,可选

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

unicodebool,可选

如果为 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')