numpy.core.defchararray.array
numpy.core.defchararray.array(obj, itemsize=None, copy=True, unicode=None, order=None)
Функция core.defchararray.array() создает массив символов.
-
- obj - последовательность строк
- Любая последовательность, которая может быть интерпретирована как массив или сам массив NumPy значениями которого являются строки, в том числе и строки символов юникода.
- itemsize - целое число (необязательный)
- Определяет количество символов на элемент результирующего массива. Определяется автоматически если
itemsize=None
иobj
- массив или последовательность Python. Если параметрitemsize
указан иobj
является строкой, тоobj
будет разбит на указанное вitemsize
количество частей. - copy - False или True (необязательный)
- Если этот параметр установлен в True (по умолчанию), то объект копируется. В противном случае копирование происходит только если метод
__array__
объекта возвращает копию, еслиobject
является вложенной последовательностью, если треуется доступ к определенным параметрам массива (itemsize, unicode и т.д.) - unicode - False или True (необязательный)
- Если
unicode = True
, то результирующий массив может содержать символы юникода, еслиunicode = False
, то только 8-битные символы. Еслиunicode = None
то этот параметр, в зависимости отobj
, будет определен автоматически. - order - 'C', 'F' или 'A' (необязательный)
- Этот параметр определяет в каком порядке массивы должны храниться в памяти: строчном C-стиле или столбчатом стиле Fortran. Если object не является массивом NumPy, то созданный массив будет находиться в памяти в строковом С порядке, если указать флаг 'F', то будет храниться в столбчатом порядке 'Fortran'. Флаг 'A' установит макет памяти выходного массива в 'F' если массив
a
является смежным со столбчатым стилем Fortran, в противном случае макет памяти будет установлен в 'C'.
-
- результат - массив символов NumPy
- Массив символов, созданный из указанного объекта.
Смотрите так же:
core.defchararray.asarray
Замечание
Эта функция предназначена для обратной совместимости со старыми версиями Numarray. Для быстрых векторных строков операций лучше использовать numpy.char
.
Примеры
>>> import numpy as np
>>>
>>> a = 'abcdef'
>>> np.core.defchararray.array(a)
chararray(['abcdef'],
dtype='<U6')
>>>
>>> np.core.defchararray.array(a, itemsize = 1)
chararray(['a', 'a', 'a', 'a', 'a', 'a'],
dtype='<U1')
>>>
>>> np.core.defchararray.array(a, itemsize = 2)
chararray(['ab', 'ab', 'ab'],
dtype='<U2')
>>>
>>> np.core.defchararray.array(a, itemsize = 3)
chararray(['abc', 'abc'],
dtype='<U3')
>>>
>>>
>>> a = ['a', 'b', 'c']
>>> np.core.defchararray.array(a)
chararray(['a', 'b', 'c'],
dtype='<U1')
>>>
>>>
>>> d = [['a', 'b'], ['c', 'd']]
>>> np.core.defchararray.array(d)
chararray([['a', 'b'],
['c', 'd']],
dtype='<U1')
>>>
>>> # Пробелы с конца строки убираются автоматически
... d = [[' a ', ' b '], [' c ', ' d ']]
>>> np.core.defchararray.array(d)
chararray([[' a', ' b'],
[' c', ' d']],
dtype='<U3')