Чтобы преобразовать массив NumPy в строку в Python, мы можем использовать функцию numpy.array2string, предлагающую настраиваемые строковые представления, а встроенная функция str и numpy.array_str() обеспечивают более простые преобразования.

Для представления необработанных байтов идеально подходит numpy.ndarray.tostring. Альтернативно, json.dumps можно использовать для строк в формате JSON, а понимание списка в сочетании с функцией соединения позволяет настраивать форматирование строк.

Содержание

1. С использованием функции np.array2string()

Функция numpy.array2string — это простой способ преобразовать массив numpy в строку. Этот метод предоставляет различные параметры форматирования.

Эта функция преобразует массив numpy в строку в Python, сохраняя при этом структуру массива в строковом формате.

import numpy as np

states = np.array(['AL', 'AK', 'AZ', 'AR', 'CA'])
states_str = np.array2string(states)
print(states_str)
print("Type:", type(states_str))

Выход:

['AL' 'AK' 'AZ' 'AR' 'CA']
Type:

После реализации кода в редакторе Pycharm снимок экрана указан ниже.

С использованием функции np.array2string()

2. С помощью функции str()

Встроенную функцию Python str() можно использовать для преобразования массива numpy в строку в Python, напрямую преобразуя строковый формат массива по умолчанию.

Например:

import numpy as np

temperatures = np.array([58.7, 55.0, 77.0, 71.6, 60.8])
temp_str = str(temperatures)
print(temp_str)
print("Type:", type(temp_str))

Выход:

[58.7 55.  77.  71.6 60.8]
Type:

Ниже приведен скриншот после реализации кода в редакторе Pycharm.

С помощью функции str()

3. С использованием функции numpy.array_str()

Функция np.array_str() предназначена для преобразования массива NumPy в строку в Python.

Например:

import numpy as np

populations = np.array([8.4, 3.9, 2.7, 1.5, 0.6])
pop_str = np.array_str(populations)
print(pop_str)
print("Type:", type(pop_str))

Выход:

[8.4 3.9 2.7 1.5 0.6]
Type:

После выполнения кода в Pycharm результат можно увидеть на снимке экрана ниже.

С использованием функции numpy.array_str()

4. С использованием функции np.ndarray.tostring()

Метод массива np.ndarray.tostring() позволяет преобразовать массив numpy в строку в Python.

Однако этот метод преобразует массив не в удобочитаемую строку, а в строку, представляющую необработанные байты в массиве.

import numpy as np

usa_flag = np.array([[1, 0, 1], [0, 1, 0], [1, 0, 1]], dtype=np.uint8)
flag_str = usa_flag.tostring()
print(flag_str)
print("Type:", type(flag_str))

Выход:

b'\x01\x00\x01\x00\x01\x00\x01\x00\x01'
Type: 

C:\Users\kumar\PycharmProjects\pythonProject1\main.py:4: DeprecationWarning: tostring() is deprecated. Use tobytes() instead.
  flag_str = usa_flag.tostring()

После запуска кода в Pycharm результат запечатлен на снимке экрана, представленном ниже.

С использованием функции np.ndarray.tostring()

5. С использованием понимания списка и функции join()

Мы можем использовать понимание списка вместе с методом объединения строк. Этот метод особенно полезен при работе с массивами строк или когда нам нужно определенное форматирование.

Этот подход сначала преобразует каждый элемент массива в строку, используя понимание списка, а затем объединяет эти строки в одну строку, разделенную запятыми.

import numpy as np

scores = np.array([24, 17, 31, 20, 27])
scores_str = ', '.join([str(score) for score in scores])
print(scores_str)
print("Type:", type(scores_str))

Выход:

24, 17, 31, 20, 27
Type:

Ниже приведен снимок экрана, демонстрирующий результат реализации кода в редакторе Pycharm.

С использованием понимания списка и функции join()

6. С помощью функции json.dumps()

Метод json.dumps() используется для преобразования массива numpy в строку в формате JSON, что включает в себя сначала преобразование массива в список Python.

Например:

import numpy as np
import json

gdp = np.array([2.1e12, 3.2e12, 1.8e12, 2.9e12])
gdp_str = json.dumps(gdp.tolist())
print(gdp_str)
print("Type:", type(gdp_str))

Выход:

[2100000000000.0, 3200000000000.0, 1800000000000.0, 2900000000000.0]
Type:

После выполнения кода в редакторе Pycharm ниже отображается снимок экрана результата.

С помощью функции json.dumps()

Добавить комментарий