numpy.char.asarray#

char.asarray(obj, itemsize=None, unicode=None, order=None)[源代码]#

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

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

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

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

  3. 矢量化字符串操作作为方法(例如 chararray.endswith)和插入运算符(例如 +, *, %)提供

参数:
objstr 或 unicode-like 的数组
itemsizeint, 可选

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

unicodebool, 可选

当为真时,生成的 chararray 可以包含 Unicode 字符,当为假时只能包含 8 位字符.如果 unicode 为 None 并且 obj 是以下之一:

  • 一个 chararray,

  • 一个类型为 str_unicode_ 的 ndarray

  • 一个 Python str 或 unicode 对象

然后输出数组的unicode设置将自动确定.

order{‘C’, ‘F’}, 可选

指定数组的顺序.如果顺序是 ‘C’(默认),那么数组将是 C 连续顺序(最后一个索引变化最快).如果顺序是 ‘F’,那么返回的数组将是 Fortran 连续顺序(第一个索引变化最快).

示例

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