numpy.char.array#

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

创建一个 chararray .

备注

提供此类是为了与 numarray 向后兼容.新的代码(不关注 numarray 兼容性)应该使用 bytes_str_ 类型的数组,并使用 numpy.char 中的自由函数来进行快速的向量化字符串操作.

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

  1. 当索引时,值会自动删除末尾的空格

  2. 当比较值时,比较运算符会自动删除末尾的空格

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

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

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

copybool,可选

如果为 true(默认值),则复制该对象.否则,只有在 __array__ 返回副本,如果 obj 是嵌套序列,或者如果需要副本来满足任何其他要求( itemsize ,unicode, order 等)时,才会创建副本.

unicodebool,可选

为 true 时,生成的 chararray 可以包含 Unicode 字符,为 false 时仅包含 8 位字符.如果 unicode 为 None 且 obj 是以下之一:

那么输出数组的 unicode 设置将被自动确定.

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

指定数组的顺序.如果 order 为 ‘C’(默认),则数组将采用 C-contiguous 顺序(最后一个索引变化最快).如果 order 为 ‘F’,则返回的数组将采用 Fortran-contiguous 顺序(第一个索引变化最快).如果 order 为 ‘A’,则返回的数组可以采用任何顺序(C-contiguous,Fortran-contiguous,甚至是不连续的).

示例

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