Zaradi poenostavitve si lahko matriko Python predstavljamo kot floto stopnic, kjer je na vsaki stopnici postavljena vrednost (recimo eden od vaših prijateljev). Tukaj lahko ugotovite lokacijo katerega koli od svojih prijateljev tako, da preprosto poznate število korakov, na katerih so. Matriko lahko v Pythonu obravnava modul z imenom array. Uporabni so lahko, ko moramo manipulirati samo z določenimi vrednostmi podatkovnega tipa. Uporabnik lahko sezname obravnava kot nize. Vendar pa uporabnik ne more omejiti vrste elementov, shranjenih na seznamu. Če ustvarite matrike Python z uporabo modula array, morajo biti vsi elementi matrike v Pythonu istega tipa. V tem članku bomo s primeri videli, kako uporabiti matriko v Pythonu.
Kaj je polje v Pythonu?
Niz je zbirka elementov, shranjenih na sosednjih pomnilniških lokacijah. Ideja je shraniti več predmetov iste vrste skupaj. To olajša izračun položaja vsakega elementa s preprostim dodajanjem odmika osnovni vrednosti, tj. pomnilniški lokaciji prvega elementa matrike (na splošno označeno z imenom matrike).

Ustvarite matriko v Pythonu
Matriko v Pythonu je mogoče ustvariti z uvozom modula matrike. niz( data_type , seznam_vrednosti ) se uporablja za ustvarjanje matrike v Pythonu s podatkovnim tipom in seznamom vrednosti, podanim v njegovih argumentih.
string.valueof
V spodnji kodi Python ustvari niz: eden od cela števila in eden od dvojne . Nato natisne vsebino vsakega polja na konzolo.
Python3
import array as arr a = arr.array('i', [1, 2, 3]) print('The new created array is : ', end=' ') for i in range(0, 3): print(a[i], end=' ') print() b = arr.array('d', [2.5, 3.2, 3.3]) print('
The new created array is : ', end=' ') for i in range(0, 3): print(b[i], end=' ')> Izhod
The new created array is : 1 2 3 The new created array is : 2.5 3.2 3.3>
Zapletenosti pri ustvarjanju nizov:
Časovna zapletenost: O(1)
Pomožni prostor: O(n)
Spodaj so omenjeni nekateri tipi podatkov, ki bodo pomagali pri ustvarjanju matrike v Pythonu 3.8
različnih tipov podatkov.

Zdaj bomo s primerom videli, kako uporabiti matriko v Pythonu 3.8.
Dodajanje elementov v matriko
Elemente je mogoče dodati Python Array z uporabo vgrajenih vstavi() funkcijo. Insert se uporablja za vstavljanje enega ali več podatkovnih elementov v matriko. Na podlagi zahteve se lahko nov element doda na začetek, konec ali kateri koli dani indeks matrike. pripni() se uporablja tudi za dodajanje vrednosti, omenjene v njegovih argumentih, na koncu matrike Python.
Spodaj koda najprej uvozi niz modul kot uvozno polje Python kot prir . Nato ustvari matriko celih števil z imenom a z elementi [1, 2, 3] . V spodnji kodi Python natisne matriko, saj je matrika natisnjena pred in po vstavitvi celega števila 4 pri indeksu 1. Podobno niz podvojitev z imenom b z elementi [2,5, 3,2, 3,3] se ustvari in natisne pred in po dodajanju dvojnika 4.4 na niz.
Python3 import array as arr a = arr.array('i', [1, 2, 3]) print('Array before insertion : ', end=' ') for i in range(0, 3): print(a[i], end=' ') print() a.insert(1, 4) print('Array after insertion : ', end=' ') for i in (a): print(i, end=' ') print() b = arr.array('d', [2.5, 3.2, 3.3]) print('Array before insertion : ', end=' ') for i in range(0, 3): print(b[i], end=' ') print() b.append(4.4) print('Array after insertion : ', end=' ') for i in (b): print(i, end=' ') print()> Izhod
Array before insertion : 1 2 3 Array after insertion : 1 4 2 3 Array before insertion : 2.5 3.2 3.3 Array after insertion : 2.5 3.2 3.3 4.4>
Zapletenosti pri dodajanju elementov v nize
Časovna zapletenost: O(1)/O(n) ( O(1) – za vstavljanje elementov na konec matrike, O(n) – za vstavljanje elementov na začetek matrike in v celotno matriko
Pomožni prostor: O(1)
Dostop do elementov iz matrike
Za dostop do elementov polja se obrnite na številko indeksa. Za dostop do elementa v matriki v Pythonu uporabite operator indeksa [ ]. Indeks mora biti celo število.
Spodaj koda najprej prikazuje, kako Python uvozi matriko in uporabo indeksiranja za dostop do elementov v matrikah. Thea[0]>izraz dostopa do prvega elementa matrikea>, ki je 1. Thea[3]>izraz dostopa do četrtega elementa matrikea>, ki je 4. Podobno velja tudi zab[1]>izraz dostopa do drugega elementa matrikeb>, kar je 3,2, inb[2]>izraz dostopa do tretjega elementa matrikeb>, kar je 3.3.
import array as arr a = arr.array('i', [1, 2, 3, 4, 5, 6]) print('Access element is: ', a[0]) print('Access element is: ', a[3]) b = arr.array('d', [2.5, 3.2, 3.3]) print('Access element is: ', b[1]) print('Access element is: ', b[2])> Izhod:
pretvori char v niz java
Access element is: 1 Access element is: 4 Access element is: 3.2 Access element is: 3.3>
Zapletenosti pri dostopu do elementov v nizih
Časovna zapletenost: O(1)
Pomožni prostor: O(1)
Odstranjevanje elementov iz matrike
Elemente je mogoče odstraniti iz matrike Python z uporabo vgrajenega Odstrani() vendar se pojavi napaka, če element ne obstaja v nizu. Metoda Remove() odstrani le en element naenkrat, za odstranitev obsega elementov se uporablja iterator. pop() funkcijo lahko uporabite tudi za odstranitev in vrnitev elementa iz matrike, vendar privzeto odstrani le zadnji element matrike, za odstranitev elementa z določenega položaja matrike se indeks elementa posreduje kot argument v metoda pop().
Opomba - Metoda Odstrani na seznamu bo odstranila samo prvo pojavitev iskanega elementa.
Spodaj koda prikazuje, kako Python uvozi matriko, kako ustvari, natisne, odstrani elemente iz in dostopa do elementov matrike v Pythonu. Uvažaarray>modul, ki se uporablja za delo z nizi. Ustvari matriko celih števil in Python natisne matrike ali natisne izvirno matriko. Nato odstrani element iz matrike in natisne spremenjeno matriko. Na koncu odstrani vse pojavitve določenega elementa iz matrike in natisne posodobljeno matriko
import array arr = array.array('i', [1, 2, 3, 1, 5]) print('The new created array is : ', end='') for i in range(0, 5): print(arr[i], end=' ') print('
') print('The popped element is : ', end='') print(arr.pop(2)) print('The array after popping is : ', end='') for i in range(0, 4): print(arr[i], end=' ') print('
') arr.remove(1) print('The array after removing is : ', end='') for i in range(0, 3): print(arr[i], end=' ')> Izhod
The new created array is : 1 2 3 1 5 The popped element is : 3 The array after popping is : 1 2 1 5 The array after removing is : 2 1 5>
Zapletenosti pri odstranjevanju elementov v nizih
Časovna zapletenost: O(1)/O(n) ( O(1) – za odstranjevanje elementov na koncu matrike, O(n) – za odstranjevanje elementov na začetku matrike za ustvarjanje Python in do celotne matrike
Pomožni prostor: O(1)
Rezanje matrike
V matriki Python obstaja več načinov za tiskanje celotne matrike z vsemi elementi, vendar za tiskanje določenega obsega elementov iz matrike uporabljamo Delovanje rezine . Operacija rezanja se izvaja na matriki z uporabo dvopičja (:). Za tiskanje elementov od začetka do obsega uporabite [:Index], za tiskanje elementov od končne uporabe [:-Index], za tiskanje elementov od določenega indeksa do končne uporabe [Index:], za tiskanje elementov znotraj obsega uporabite [ Začetni indeks: Končni indeks] in za tiskanje celotnega seznama z uporabo operacije rezanja uporabite [:]. Nadalje, če želite natisniti celotno matriko v obratnem vrstnem redu, uporabite [::-1].

Ta koda uporablja rezanje za ekstrahiranje elementov ali podnizov iz matrike. Začne se z začetnim nizom celih števil in ustvari niz s seznama. Koda razreže matriko, da izvleče elemente od indeksa 3 do 8, od indeksa 5 do konca, ter celotno matriko in v spodnji kodi Python natisne matriko kot Razrezane matrike se nato natisnejo za prikaz operacij rezanja.
Python3 import array as arr l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] a = arr.array('i', l) print('Initial Array: ') for i in (a): print(i, end=' ') Sliced_array = a[3:8] print('
Slicing elements in a range 3-8: ') print(Sliced_array) Sliced_array = a[5:] print('
Elements sliced from 5th ' 'element till the end: ') print(Sliced_array) Sliced_array = a[:] print('
Printing all elements using slice operation: ') print(Sliced_array)> Izhod
Initial Array: 1 2 3 4 5 6 7 8 9 10 Slicing elements in a range 3-8: array('i', [4, 5, 6, 7, 8]) Elements sliced from 5th element till the end: array('i', [6, 7, 8, 9, 10]) Printing all elements...> Iskanje elementa v nizu
Za iskanje po elementu v matriki uporabljamo vgrajeni python indeks() metoda. Ta funkcija vrne indeks prvega pojava vrednosti, omenjene v argumentih.
primer: Koda prikazuje, kako ustvariti matriko v Pythonu, natisniti njene elemente in najti indekse določenih elementov. Uvažaarray>ustvari matriko celih števil, natisne matriko s pomočjo zanke for in nato uporabiindex()>metoda za iskanje indeksov prvih pojavitev celih števil 2 in 1.
import array arr = array.array('i', [1, 2, 3, 1, 2, 5]) print('The new created array is : ', end='') for i in range(0, 6): print(arr[i], end=' ') print('
') print('The index of 1st occurrence of 2 is : ', end='') print(arr.index(2)) print('The index of 1st occurrence of 1 is : ', end='') print(arr.index(1))> Izhod
The new created array is : 1 2 3 1 2 5 The index of 1st occurrence of 2 is : 1 The index of 1st occurrence of 1 is : 0>
Zapletenosti pri iskanju elementov v nizih
Časovna zapletenost: O(n)
Pomožni prostor: O(1)
Posodabljanje elementov v nizu
Da bi posodobili element v matriki, preprosto znova dodelimo novo vrednost želenemu indeksu, ki ga želimo posodobiti.
primer: Ta koda ponazarja funkcionalnost spreminjanja elementov v matriki z uporabo indeksiranja. Uvažaarray>modul, ustvari matriko celih števil in natisne začetno matriko. Nato spremeni dva elementa matrike pri določenih indeksih in natisne posodobljeno matriko. To služi za prikaz, kako indeksiranje omogoča dinamično manipulacijo vsebine polja.
import array arr = array.array('i', [1, 2, 3, 1, 2, 5]) print('Array before updation : ', end='') for i in range(0, 6): print(arr[i], end=' ') print('
') arr[2] = 6 print('Array after updation : ', end='') for i in range(0, 6): print(arr[i], end=' ') print() arr[4] = 8 print('Array after updation : ', end='') for i in range(0, 6): print(arr[i], end=' ')> Izhod
Array before updation : 1 2 3 1 2 5 Array after updation : 1 2 6 1 2 5 Array after updation : 1 2 6 1 8 5>
Zapletenosti pri posodabljanju elementov v nizih
Časovna zapletenost: O(n)
Pomožni prostor: O(1)
Različne operacije nad nizi Python
Štetje elementov v nizu
Za štetje elementov v matriki moramo uporabiti metodo štetja.
primer: Koda prikazuje, kako določiti frekvenco določenega elementa v nizu. Uvažaarray>ustvari matriko celih števil, da ustvari matrike v Pythonu in prešteje pojavitve števila 2 z uporabocount()>in na koncu natisne rezultat. Ta delček kode učinkovito prikazuje zmožnost analize porazdelitve elementov v nizih.
import array my_array = array.array('i', [1, 2, 3, 4, 2, 5, 2]) count = my_array.count(2) print('Number of occurrences of 2:', count)> Izhod
Number of occurrences of 2: 3>
Zapletenosti pri štetju elementov v nizih
Časovna zapletenost: O(n)
Pomožni prostor: O(1)
tostring v Javi
Obračanje elementov v matriki
Da bi obrnili elemente matrike, moramo preprosto uporabiti obratno metodo.
primer: Predstavljena koda prikazuje funkcionalnost obračanja vrstnega reda elementov v matriki z uporabo reverse()> metoda. Uvažaarray>modul, ustvari matriko celih števil, natisne izvirno matriko, obrne vrstni red elementov zreverse()>in nato natisne obrnjeno matriko. To učinkovito ponazarja zmožnost spreminjanja razporeditve elementov v matriki.
import array my_array = array.array('i', [1, 2, 3, 4, 5]) print('Original array:', *my_array) my_array.reverse() print('Reversed array:', *my_array)> Izhod
Original array: 1 2 3 4 5 Reversed array: 5 4 3 2 1>
Zapletenosti za obračanje elementov v nizih:
Časovna zapletenost: O(n)
Pomožni prostor: O(1)
Razširi element iz matrike
V članku bomo obravnavali seznam pitonov razširi () in poskusite razumeti Python seznam extend().
niz v celo število v Javi
Kaj je razširitveni element iz matrike?
V Pythonu se matrika uporablja za shranjevanje več vrednosti ali elementov istega podatkovnega tipa v eno spremenljivko. The razširi () funkcija se preprosto uporablja za pripenjanje elementa iz iterable na konec matrike. Preprosteje rečeno, ta metoda se uporablja za dodajanje niza vrednosti na konec danega ali obstoječega niza.
Sintaksa seznama extend()
Sintaksa za razširi () metoda:
list.extend(iterable)>
Tu so vsi elementi iterable dodani na konec seznama1
Primer 1:
Priložena koda prikazuje zmožnost razširitve matrike, da vključuje dodatne elemente. Uvažaarray>modul z uporabo vzdevka, ustvari matriko celih števil, natisne matriko pred razširitvijo, razširi matriko z extend()> in na koncu natisne razširjeno matriko. To jedrnato ponazarja možnost dodajanja elementov v obstoječo matrično strukturo
import array as arr a = arr.array('i', [1, 2, 3,4,5]) print('The before array extend : ', end =' ') for i in range (0, 5): print (a[i], end =' ') print() a.extend([6,7,8,9,10]) print('
The array after extend :',end=' ') for i in range(0,10): print(a[i],end=' ') print()> Izhod
The before array extend : 1 2 3 4 5 The array after extend : 1 2 3 4 5 6 7 8 9 10>
Primer 2:
Priložena koda prikazuje zmožnost razširitve nizov z različnimi tipi podatkov, vključno s celimi števili in lebdečimi. Uporabljaarray>modul, ustvari polja obeh tipov podatkov in jih razširi z uporabo extend()> metoda. Nizi se nato natisnejo pred in po razširitvi za ponazoritev sprememb. To učinkovito prikazuje zmožnost dodajanja elementov nizom različnih predstavitev podatkov.
import array as arr a=arr.array('i',[1,2,3,4,5,6]) print('The Before extend array is :',end=' ') for i in range(0,6): print(a[i],end=' ') print() a.extend([7,8,9,10,11,12]) print('
The After extend array is :',end=' ') for i in range(0,12): print(a[i],end=' ') print() b = arr.array('d', [2.1,2.2,2.3,2.4,2.5,2.6]) print('
The before extend array is :',end=' ') for i in range(0,6): print(b[i],end=' ') print() b.extend([2.6,2.7,2.8,2.9]) print('
The after extend array is :',end=' ') for i in range(0,9+1): print(b[i],end=' ') print()> Izhod
The Before extend array is : 1 2 3 4 5 6 The After extend array is : 1 2 3 4 5 6 7 8 9 10 11 12 The before extend array is : 2.1 2.2 2.3 2.4 2.5 2.6 The after extend array is : 2.1 2.2 2.3 2.4 2...>
Zapletenosti za razširitev elementa iz matrike:
Časovna zapletenost : O(1)
Pomožni prostor: O(1)
Več informacij o matriki Python:
- Matrika v Pythonu | 1. sklop (uvod in funkcije)
- Matrika v Pythonu | 2. sklop (pomembne funkcije) an