Как преобразовать список в массив NumPy (с примерами)
Вы можете использовать следующий базовый синтаксис для преобразования списка в Python в массив NumPy:
import numpy as np my_list = [1, 2, 3, 4, 5] my_array = np.asarray (my_list)
В следующих примерах показано, как использовать этот синтаксис на практике.
Пример 1: преобразование списка в массив NumPy
Следующий код показывает, как преобразовать список в Python в массив NumPy:
import numpy as np #create list of values my_list = [3, 4, 4, 5, 7, 8, 12, 14, 14, 16, 19] #convert list to NumPy array my_array = np.asarray (my_list) #view NumPy array print(my_array) [ 3 4 4 5 7 8 12 14 14 16 19] #view object type type (my_array) numpy.ndarray
Обратите внимание, что вы также можете использовать аргумент dtype , чтобы указать определенный тип данных для нового массива NumPy при выполнении преобразования:
import numpy as np #create list of values my_list = [3, 4, 4, 5, 7, 8, 12, 14, 14, 16, 19] #convert list to NumPy array my_array = np.asarray (my_list, dtype=np.float64 ) #view data type of NumPy array print(my_array. dtype ) float64
Пример 2: преобразование списка списков в массив массивов NumPy
В следующем коде показано, как преобразовать список списков в массив массивов NumPy:
import numpy as np #create list of lists my_list_of_lists = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] #convert list to NumPy array my_array = np.asarray (my_list_of_lists) #view NumPy array print(my_array) [[1 2 3] [4 5 6] [7 8 9]]
Затем мы можем использовать функцию формы , чтобы быстро получить размеры нового массива массивов:
print(my_array. shape ) (3, 3)
Это говорит нам о том, что массив массивов NumPy имеет три строки и три столбца.
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные преобразования данных в Python:
Преобразование массива NumPy в список
Объекты [np.array] в NumPy можно преобразовывать в списки с помощью функции tolist(). Функция tolist() не принимает никаких аргументов. Если массив одномерный, она возвращает список с элементами массива. Для многомерного массива возвращается вложенный список.
Преобразование одномерного массива NumPy в список
Для примера давайте создадим одномерный массив:
import numpy as np # 1d array to list arr_1 = np.array([1, 2, 3]) print(f'NumPy Array:\n')
Данный код вернет такой результат:
NumPy Array: [1 2 3]
А теперь попробуем применить функцию tolist():
import numpy as np # 1d array to list arr_1 = np.array([1, 2, 3]) print(f'NumPy Array:\n') list_1 = arr_1.tolist() print(f'List: ')
Новый код вернет:
List: [1, 2, 3]
Как видите, массив был преобразован в список.
Преобразование многомерного массива NumPy в список
Давайте теперь построим многомерный массив:
import numpy as np # 2d array to list arr_2 = np.array([[1, 2, 3], [4, 5, 6]]) print(f'NumPy Array:\n')
Этот код выведет следующий массив:
NumPy Array: [[1 2 3] [4 5 6]]
А теперь давайте применим функцию tolist():
import numpy as np # 2d array to list arr_2 = np.array([[1, 2, 3], [4, 5, 6]]) print(f'NumPy Array:\n') list_2 = arr_2.tolist() print(f'List: ')
Этот код выведет такой результат:
List: [[1, 2, 3], [4, 5, 6]]
Массив был преобразован из скаляров numpy в скаляры Python.
Заключение
В этой статье мы показали, как использовать функцию tolist() для преобразования объектов np.array в списки. Функцию можно применять как к одномерным, так и к многомерным массивам.
Читайте также:
- Документация API
- Обнаружение и распознавание лиц на фотографиях
Преобразование списка Python в массив NumPy
В Python список – это линейная структура данных, в которой могут храниться разнородные элементы. Его не нужно определять, и он может сжиматься и расширяться по мере необходимости.
С другой стороны, массив NumPy – это структура данных, которая может хранить только однородные элементы. Он реализован на Python с использованием библиотеки NumPy.
Эта библиотека очень эффективна при работе с многомерными массивами, а также при обработке огромного количества элементов данных. Массивы NumPy используют меньше памяти, чем структуры данных списка. И массив NumPy, и список можно идентифицировать по их значению индекса.
Библиотека NumPy предоставляет два метода преобразования списков в массивы в Python:
- Использование numpy.array().
- Использование numpy.asarray().
Метод 1. Использование numpy.array()
В Python самый простой способ преобразовать список в массив NumPy – использовать функцию numpy.array(). Он принимает аргумент и возвращает массив NumPy, создает новую копию в памяти.
# importing library of the array in python import numpy # initilizing elements of the list a = [1, 2, 3, 4, 5, 6, 7, 8, 9] # converting elements of the list into array elements arr = numpy.array(a) # displaying elements of the list print("List: ", a) # displaying elements of the array print("Array: ", arr)
List: [1, 2, 3, 4, 5, 6, 7, 8, 9] Array: [1 2 3 4 5 6 7 8 9]
Метод 2. Использование numpy.asarray()
Второй метод – это функция numpy.asarray(), которая преобразует список в массив NumPy. Он принимает аргумент и преобразует его в массив NumPy, не создавая новую копию в памяти. В этом случае все изменения, внесенные в исходный массив, отражаются в массиве NumPy.
# importing library of the array in python import numpy # initilizing elements of the list a = [1, 2, 3, 4, 5, 6, 7, 8, 9] # converting elements of the list into array elements arr = numpy.asarray(a) # displaying elements of the list print("List:", a) # displaying elements of the array print("Array: ", arr)
List: [1, 2, 3, 4, 5, 6, 7, 8, 9] Array: [1 2 3 4 5 6 7 8 9]

# importing library of the NumPy array in python import numpy # initilizing elements of the list lst = [1, 2, 3, 4, 5, 6, 7, 8, 9] # converting elements of the list into array elements arr = numpy.asarray(lst) # displaying elements of the list print("List:", lst) # displaying elements of the array print("arr: ", arr) # made another array out of arr using asarray function arr1 = numpy.asarray(arr) #displaying elements of the arr1 before the changes made print("arr1: " , arr1) #change made in arr1 arr1[3] = 23 #displaying arr1 , arr , list after the change has been made print("lst: " , lst) print("arr: " , arr) print("arr1: " , arr1)
List: [1, 2, 3, 4, 5, 6, 7, 8, 9] arr: [1 2 3 4 5 6 7 8 9] arr1: [1 2 3 4 5 6 7 8 9] lst: [1, 2, 3, 4, 5, 6, 7, 8, 9] arr: [ 1 2 3 23 5 6 7 8 9] arr1: [ 1 2 3 23 5 6 7 8 9]
Как преобразовать список в массив чисел на Python

Проблема в том, что этот код выдает мне очень большой список list Мне этот List нужно преобразовать в массив. Для того, что бы я потом мог взять от туда случайное число. Но не могу понять как это сделать, постоянно выдает ошибки разные.
Отслеживать
задан 2 окт 2020 в 17:45
59 7 7 бронзовых знаков
А что вам мешает взять случайное число из list? Генерируйте случайный индекс в диапазоне индексов списка и получаете. У вас уже по сути массив и есть
