Pythonov niz

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"

Jednodimenzionalni niz je popis elemenata.
Vrijednost popisa označena je uglatim zagradama [], razdvojenim zarezima. Bilo koja stavka se poziva prema indeksu. Elementima se mogu dodijeliti nove vrijednosti. Ovo izgleda kao prazan popis:
  • a = []
  • Niz matrica "Python" izgleda ovako:
  • Prime = ['string1', 'string2', 'string3']
  • Prime

    ] = 'string2'; //true
  • Funkcija len () vraća broj stavki na popisu.
  • len (Prime) == 4; //true
  • Za elemente niza petlje, koristi se petlja for. Njegova je razlika u odnosu na Pascala to što preuzima elemente, a ne njihove indekse.
  • za elem u [1, 4, 67]
  • Generator petlje se koristi za stvaranje petlje. Piše kao [vrijednost niza za ime varijable u broju elemenata]; Dvodimenzionalni niz u "Pythonu" kreira se pomoću ugniježđenih generatora. Ovo izgleda ovako:
  • [[0 za j u rasponu (m)] za i u rasponu (n)]
  • Stvaranje niza u NumPy

    Stvaranje i izmjena polja u "Pythonu" "koristi NumPy knjižnicu.
    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.

    Osnovne operacije NumPy

    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).

    Forma

    Veličina polja u "Pythonu" određuje oblik. Metoda form () koristi se za provjeru trenutnog obrasca.
    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.

    Cuts

    Č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.
    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.

    Kopiranje

    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.arange
  • i 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
  • Kombinacija, particija

    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.

    Povezane publikacije