numpy.char.array#

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

创建 chararray .

备注

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

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

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

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

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

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

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 连续顺序排列(最后一个索引变化最快).如果 order 是 ‘F’,则返回的数组将以 Fortran 连续顺序排列(第一个索引变化最快).如果 order 是 ‘A’,则返回的数组可以是任何顺序(C 连续,Fortran 连续,甚至是不连续的).

示例

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