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')