Python je programski jezik visoke razine opće namjene. Podržava ne samo OOP, nego i strukturno, funkcionalno, imperativno, aspektno orijentirano programiranje. Standardna knjižnica sadrži mnoge alate za rad s mrežnim protokolima, kodiranje teksta, multimedijske formate, za razvoj cross-platform aplikacija.
Matrica "Python"
Stvaranje niza u NumPy
Podržava višedimenzionalni niz i matricu s velikim skupompaketi za rješavanje matematičkih problema. Također pruža rad s homogenim višedimenzionalnim nizovima i matricama. Da biste mogli koristiti funkcije ovog paketa, morate ga uvesti.
uvoz numpy kao np Jedan od najjednostavnijih načina za postavljanje Pythonova niza je korištenje funkcije array (). Stvara objekt kao što je ndarray.array = np.array (/* skup elemenata * /) Sada je polje tipa ndarray. To se može provjeriti pomoću funkcije array.type (). Kao argument prihvatila je ime stvorenog niza. Povratni odgovor -. Da biste poništili tip, morate koristiti dtype = np.complex u vrijeme stvaranja.array2 = np.array ([/* elementi * /, dtype = np.complex) Ako želite specificirati niz, ali njegovi elementi su nepoznati u ovoj fazi, on je ispunjen nulama pomoću nula (). Možete stvoriti niz jedinica s funkcijom ones (). Broj ugniježđenih polja i broj unutarnjih elemenata prihvaćaju se kao argumenti.
np.zeros (222) Stvara dva polja koja sadrže 2 elementa.niz ([ [[0, 0]] [[0, 0]]] Za prikaz polja na zaslonu, funkcija print (). Ako je polje preveliko za pečat, NumPy skriva središnji dio i prikazuje samo ekstremne vrijednosti. Da biste vidjeli cijeli niz, koristi se funkcija set_printoptions (). Prema zadanim se postavkama prikazuje samo prvih 1000 stavki. Ova vrijednost označena je kao argument s pragom ključne riječi.
Svako djelovanje na elementima niza u "Pythonu" uključuje stvaranje novog polja.
Stvoreni nizsadrži elemente dobivene kao rezultat nekih radnji na njima. Nizovi mogu međusobno djelovati samo ako imaju istu veličinu. Na primjer:array1 = np.array ([[1, 2, 3], [1, 2, 3]]) array2 = np.array ([[1, 2, 3], [1, 2, 3], [1, 2, 3]]) Pri izvođenju array1 + array2, prevodilac će prikazati pogrešku jer je veličina prvog polja 2, a druga 3.
array1 = np .array ([1, 2, 5, 7]) array2 = arange ([1, 5, 1]) Array1 + array2 će vratiti niz s elementima 248 11. Neće biti pogreške, jer veličina dva je ista. Umjesto ručnog dodavanja, možete koristiti funkciju koja je uključena u klasu ndarray sum ().np.array (array1 + array1) == array1 + array2 Klasa ndarray daje veliku biblioteku metoda za matematičke operacije. Navedeni su kao np.image metode (naziv varijable).
Veličina polja u "Pythonu" određuje oblik. Metoda form () koristi se za provjeru trenutnog obrasca.
Osnovne operacije NumPy
Forma
Niz s dva i tri elementa ima oblik (223). Promijenit će se ako obrazac () specificira argumente. Kao prvi, koristit će se broj podmasa, a drugi je dimenzija svake podmaske. Istu operaciju obavlja funkcija reshape (). Njegovi parametri određuju broj redaka i stupaca. Postoje načini manipulacije obrascem. Na primjer, ravel () višedimenzionalnog niza čini jednodimenzionalnu, konstruirajući unutarnje vrijednosti u inkrementima dosljedno. Funkcija transpose () mijenja redove i stupce višedimenzionalnog niza.
Često ne morate raditi s cijelim nizom, već samo s nekim njegovim elementima. U te svrhe Python ima metodu Slice. Došao je zamijeniti utakmicuelementi petlje za.
Cuts
Metoda otvara široke mogućnosti za dobivanje kopije niza u "Pythonu". Sve manipulacije se provode kao [start: stop: step]. Ovdje vrijednost start označava indeks elementa iz kojeg počinje odbrojavanje, vrijednost zaustavljanja je zadnji element, veličina koraka je broj preskočenih elemenata za svaku iteraciju. Po defaultu, start je nula, to jest, brojanje počinje s elementom nule na popisu, stop je indeks posljednjeg elementa popisa, korak je jednak jednom, to jest, svaki se pomiče redom. Ako se proslijedi funkciji bez argumenata, popis se kopira od početka do kraja. Primjerice, imamo niz:mas = [1, 2, 3, 4] Za kopiranje koristimo mas [:]. Funkcija vraća niz elemenata [1, 2, 3, 4]. Ako je argument negativna vrijednost, na primjer -3, funkcija vraća stavke s indeksima od treće do posljednje.mas [-3]; // Nakon dvotočke, označava se korak elemenata kopiranih u polje. Na primjer, mas [:: 2] vraća niz [1, 3]. Ako je negativna vrijednost naznačena, na primjer, [:: - 2] odbrojavanje počinje s krajem, a mi dobivamo [3, 1]. Metod rezanja omogućuje fleksibilan rad s ugniježđenim popisima. Za dvodimenzionalni niz u "Pythonu" [:, 2] znači da će se svaki treći element svih polja vratiti. Ako navedete [: 2] - prva dva će biti vraćena.
Dobivanje kopije vrši se pomoću gore opisanih isječaka. U Pythonu kopiranje kroz dodjelu ne radi, jer se na taj način ne prenose objekti, već samo veza. To znači da stvaranjem niza izvrijednosti np.arangei dodjeljivanje array2 = array1 dobivamo dva objekta s istim vrijednostima, ali različita imena, u ovom slučaju array1 i array2. Promjena oblika jednog od njih utjecat će na drugu. Funkcija array1.shape (3 4) mijenja oblik array2.
array1.shape () == (3 4); //true array2.shape () == (3 4); //true () stvara različite objekte s istim podacima. Primjerice, imamo određeni niz matrica, za koji koristimo view ()array.view () Ova vrijednost dodjeljuje drugi array2 i vidimo da su to različiti objekti, ali imaju iste podatke. Provjeravamo:array2 je polje1; //false Ako promijenimo oblik jednog od nizova, on se ne mijenja u drugom.array1.shape (2 6) array1 == polje2; //true
Nizovi se mogu spojiti zajedno. To se radi duž osi ili redova. Funkcija hstack () ih kombinira u retke, a vstack () u stupcima. Funkcija column_stack () može kombinirati nizove u jednodimenzionalnim argumentima. Slično, column_stack () radi row_stack (), ali kombinira redove, a ne stupce. Da bi se polje podijelilo vodoravno, koristi se funkcija hsplit (), a vsplit () je vertikalno primijenjena.