numpy.char.array#
- char.array(obj, itemsize=None, copy=True, unicode=None, order=None)[source]#
创建一个
chararray
。注意
此类是为了 numarray 向后兼容性而提供的。新的代码(与 numarray 兼容性无关)应该使用
bytes_
或str_
类型的数组,并使用numpy.char
中的自由函数来进行快速的矢量化字符串操作。与 dtype 为
bytes_
或str_
的 NumPy 数组相比,此类添加了以下功能:索引值时,会自动去除末尾的空格。
比较运算符在比较值时会自动去除末尾的空格。
矢量化字符串操作作为方法提供(例如
chararray.endswith
)和中缀运算符(例如+, *, %
)。
- 参数:
- objstr 或 unicode 类数组
- itemsizeint,可选
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')