Úvod
V Pythonu je seznam lineární datová struktura, která může ukládat heterogenní prvky. Nemusí být definován a může se podle potřeby zmenšovat a rozšiřovat. Na druhém konci je pole NumPy datová struktura, která může ukládat homogenní prvky. Je implementován v Pythonu pomocí knihovny NumPy. Tato knihovna je velmi efektivní při práci s vícerozměrnými poli. Je také velmi efektivní při manipulaci s velkým množstvím datových prvků. Pole NumPy využívají méně paměti než datové struktury seznamu. Pole NumPy i seznam lze identifikovat podle hodnoty indexu.
Knihovna NumPy poskytuje dvě metody pro převod seznamů na pole v Pythonu.
- Použití numpy.array()
- Použití numpy.asarray()
Metoda 1: Použití numpy.array()
V Pythonu je nejjednodušší způsob, jak převést seznam na pole NumPy, pomocí funkce numpy.array(). Vezme argument a vrátí pole NumPy. Vytvoří novou kopii v paměti.
Program 1
# 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)
Výstup:
List: [1, 2, 3, 4, 5, 6, 7, 8, 9] Array: [1 2 3 4 5 6 7 8 9]
Metoda 2: Použití numpy.asarray()
V Pythonu je druhou metodou funkce numpy.asarray(), která převádí seznam na pole NumPy. Vezme argument a převede jej na pole NumPy. Nevytváří novou kopii v paměti. V tomto se všechny změny provedené v původním poli projeví v poli NumPy.
Program 2
# 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)
Výstup:
List: [1, 2, 3, 4, 5, 6, 7, 8, 9] Array: [1 2 3 4 5 6 7 8 9]
Program 3
# 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)
Výstup:
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]