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 将自动确定。如果提供 itemsizeobj 的类型为 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')