Päivämäärätaulukon luominen LuckyTemplatesissa
Ota selvää, miksi LuckyTemplatesissa on tärkeää pitää oma päivämäärätaulukko ja opi nopein ja tehokkain tapa tehdä se.
Jos olet Python-kehittäjä, olet todennäköisesti kuullut dequesta tai "kaksipäätteisestä jonosta". Se on tehokas työkalu, joka voi lisätä sovelluksesi tehokkuutta ja nopeuttaa sen suorituskykyä.
Deque on erikoistunut säilön tietotyyppi, joka tarjoaa nopeammat lisäys- ja pop-toiminnot säilön molemmista päistä. Tämä tekee siitä arvokkaan työkalun jonojen ja pinojen toteuttamiseen, jotka ovat yleisiä luettelomaisia tietotyyppejä laskennassa.
Se on matalan tason ja erittäin optimoitu tietorakenne, joka on erittäin hyödyllinen useissa sovelluksissa. Python-ohjelmoijana deque on yksi työkalu, jonka haluat olla arsenaalissasi.
Jatka lukemista saadaksesi lisätietoja Dequesistä ja kuinka voit ottaa ne käyttöön !
Sisällysluettelo
Mikä on Deque?
Jos olet uusi Pythonissa tai tietokoneohjelmoinnissa yleensä, saatat ihmetellä, mitä deque on. Deque tarkoittaa " kaksipäätteistä jonoa ", ja se on tietorakenne, jonka avulla voit lisätä ja poistaa elementtejä jonon molemmista päistä.
Se on samanlainen kuin tavallinen jono, mutta siinä on joustavuutta, koska se voi lisätä ja poistaa elementtejä sekä jonon etu- että takapuolelta. Tämä on mahdollista, koska Pythonin deque on toteutettu kaksoislinkitettynä luettelona.
Pythonissa dequet toteutetaan kokoelmamoduulilla, joka tarjoaa deque-luokan. Tämä luokka tarjoaa useita menetelmiä elementtien lisäämiseen ja poistamiseen deque-tiedostosta.
Se tarjoaa myös toimintoja muihin hyödyllisiin toimintoihin, kuten dequen pyörittämiseen tai sen tyhjentämiseen kokonaan.
Python Dequen ominaisuudet
Toisin kuin tavallisessa listassa, jolla on O(n)-aika monimutkaisuus append- ja pop-operaatioille, deque tarjoaa O(1)-aikaisen monimutkaisuuden. Tämä tekee siitä huomattavasti nopeamman ja muistitehokkaan näihin luku- ja kirjoitustoimintoihin.
Tässä on joitain muita Python deque -ominaisuuksia, joista sinun pitäisi tietää:
Se on muuttuva tietorakenne.
Se voi tallentaa useita tietotyyppejä, esim. kokonaisluvut, monikot, taulukot jne.
Se tukee indeksointia, mutta ei viipalointitoimintoja.
Se ei tue paikan päällä tapahtuvaa lajittelua
Se tukee yleisiä sisäänrakennettuja iteroitavia toimintoja ja toimintoja, kuten in , sorted() , len() , reverse() jne.
A Dequen sovellukset
Dequet ovat hyödyllisiä monista syistä. Niitä voidaan käyttää esimerkiksi jonon tai pinon toteuttamiseen, jotka molemmat ovat yleisiä tietorakenteita tietojenkäsittelytieteessä.
Niitä voidaan käyttää myös tietojen tehokkaaseen käsittelyyn reaaliajassa, kuten suoratoistosovelluksissa tai järjestelmissä, jotka edellyttävät nopeaa pääsyä tietoihin.
Sen lisäksi, että niitä käytetään jonoihin ja pinoihin, niitä voidaan käyttää myös leveysensimmäisten hakualgoritmien toteuttamiseen. Ne ovat hyödyllisiä myös, kun haluat säilyttää kohteiden liukuvan ikkunan suuremmassa järjestyksessä.
Dequen luominen ja alustaminen
Voit luoda dequen käyttämällä kokoelmamoduulin sisäänrakennettua toimintoa. Katsotaanpa tarkasti, kuinka voit luoda ja täyttää tämän tietorakenteen.
Deque()-funktion käyttäminen
Voit luoda dequen Pythonissa käyttämällä kokoelmamoduulin sisäänrakennettua deque()- funktiota. Tämä funktio palauttaa uuden tyhjän deque-objektin, jota voit käyttää kaksipäisen jonon toteuttamiseen.
Tässä on esimerkki tyhjän deque-objektin luomisesta:
from collections import deque
my_deque = deque()
Voit myös luoda dequen alkuelementeillä välittämällä iteroitavan (list, tuple jne.) deque()- funktiolle. Deque alustetaan iterable-elementeillä vasemmalta oikealle.
Tässä on esimerkki:
from collections import deque
my_list = [1, 2, 3, 4, 5]
my_deque = deque(my_list)
Dequen alustaminen elementeillä
Voit myös alustaa tyhjän dequen elementeillä eri menetelmillä. Yksi tapa tehdä tämä on lisätä append()- ja appendleft()- menetelmiä elementtien lisäämiseen deque-tiedostoon oikealta ja vasemmalta puolelta.
Tässä on esimerkki:
from collections import deque
#Initialize the empty deque
my_deque = deque()
print(my_deque)
#Add Values to the deque
my_deque.append(1)
my_deque.append(2)
my_deque.appendleft(3)
print(my_deque)
Tämän koodin suorittamisen jälkeen deque sisältää elementit [3, 1, 2].
Toinen tapa alustaa deque elementeillä on välittää luettelo elementeistä deque ()- funktiolle.
Tässä on esimerkki:
from collections import deque
my_deque = deque([1, 2, 3])
Tämän koodin suorittaminen luo deque-objektin, joka sisältää elementit [1, 2, 3] .
Kaiken kaikkiaan dequen luominen ja alustaminen Pythonissa on yksinkertaista, ja se voidaan tehdä käyttämällä sisäänrakennettua deque()- toimintoa. Voit tehdä tämän myös lisäämällä elementtejä tyhjään deque-tiedostoon append()- ja appendleft()- menetelmillä.
Kuinka suorittaa yleisiä deque-operaatioita
Pythonissa on monia toimintoja, joita voit suorittaa deque-objekteille. Katsotaanpa joitain suosituimmista.
Elementtien lisääminen deque-kappaleeseen
Voit lisätä elementtejä deque-tiedostoon append()- ja appendleft()- menetelmillä. Append () -menetelmä lisää elementin dequen oikeaan päähän, kun taas appendleft()- metodi lisää elementin dequen vasempaan päähän.
Tässä on esimerkki:
import collections
# Create an empty deque
my_deque = collections.deque()
# Add elements to the deque
my_deque.append(1)
my_deque.appendleft(2)
my_deque.append(3)
print(my_deque)
# Output:
deque([2, 1, 3])
Useiden tietoelementtien lisääminen deque-tiedostoon
Jos et halua lisätä deque-tietoelementtejä yksitellen, voit nopeuttaa prosessia extend()- tai extendleft()- funktioilla. Nämä funktiot ottavat iteroitavan ja lisäävät iteroitavan sisällön dequen loppuun tai vasempaan loppuun.
Tässä on esimerkki:
from collections import deque
my_list = [1, 2, 3, 4, 5]
my_deque = deque(my_list)
#Creating a tuple and list
cont = (11, 12, 13, 14)
full = [10,20,30]
#Extending the deque from the right
my_deque.extend(cont)
print(my_deque)
#Extending the deque from the left
my_deque.extendleft(full)
print(my_deque)
Yllä olevassa koodissa extend()- funktio lisää useat arvot cont -tyypissä dequen loppuun. Seuraavaksi extendleft()- funktio liittää useat tietoelementit täydellisessä luettelossa dequen vasempaan päähän.
Elementtien poistaminen dequesta
Voit poistaa elementtejä Python-dequesta pop()- ja popleft()- menetelmillä. Pop () -menetelmä poistaa ja palauttaa dequen oikeanpuoleisimman elementin, kun taas popleft()- menetelmä poistaa ja palauttaa dequen vasemmanpuoleisimman elementin.
Tässä on esimerkki:
import collections
#Create a deque with some elements
my_deque = collections.deque([1, 2, 3, 4, 5])
#Remove elements from the deque
my_deque.pop()
my_deque.popleft()
print(my_deque)
# Output: deque([2, 3, 4])
Voit myös poistaa tietyn arvon dequesta käyttämällä remove()- funktiota. Funktio poistaa määritetyn arvon ensimmäisen esiintymän dequesta.
Tässä on esimerkki:
import collections
#Create a deque with some elements
my_deque = collections.deque([1, 2, 1, 4, 5])
#Remove elements from the deque
my_deque.remove(1)
print(my_deque)
# Output: deque([2, 1, 4, 5])
Jos elementtiä ei löydy, Python palauttaa ValueError .
Kaikkien osien poistaminen dequesta
Voit poistaa kaikki elementit Dequesta ja palauttaa sen tyhjään tilaan käyttämällä clear()- funktiota. Näin se toimii:
from collections import deque
#Create a deque with some elements
my_deque = deque([1, 2, 1, 4, 5])
#Remove all elements from the deque
my_deque.clear()
print(my_deque)
# Output:
deque([])
Dequen elementtien käyttö
Python-dequen elementtejä pääsee käsiksi indeksointioperaattorilla [] . Voit myös käyttää negatiivista arvoa indeksointioperaattorissa päästäksesi deque-elementteihin oikealta.
Indeksointi alkaa 0:sta vasemmanpuoleisen elementin kohdalla ja -1:stä oikeanpuoleisimman elementin kohdalla. Tässä on esimerkki:
import collections
# Create a deque with some elements
my_deque = collections.deque([1, 2, 3, 4, 5])
# Access elements of the deque
print(my_deque[0])
# Output: 1
print(my_deque[-1])
# Output: 5
Dequen elementtien muokkaaminen
Python-dequen elementtejä voi muokata indeksointioperaattorilla " [] " ja osoitusoperaattorilla " = ". Tässä on esimerkki:
from collections import deque
# Create a deque with some elements
my_deque = deque([1, 2, 3, 4, 5])
print(my_deque)
# Modify elements of the deque
my_deque[0] = 10
my_deque[-1] = 50
print(my_deque)
Yllä olevassa koodissa indeksointioperaattori muuttaa dequen ensimmäisen ja viimeisen elementin arvoon 10 ja 50.
Nämä ovat perustoimintoja, joita voit suorittaa deque-objektille Pythonissa. Näiden toimintojen avulla voit toteuttaa tehokkaasti erilaisia tietorakenteita, kuten jonoja, pinoja ja paljon muuta.
Kuinka työskennellä dequen kanssa jonona
Pythonissa voit käyttää deque-toimintoa jonotietorakenteen toteuttamiseen. Jono on abstrakti tietotyyppi, joka toimii FIFO-periaatteella .
Tämä tarkoittaa, että voit lisätä uusia kohteita jonon toisesta päästä ja työntää pois vanhoja kohteita toisesta päästä.
Hyvä tapa selittää tämä on jono myymälässä. Yleensä ensimmäinen saapuva henkilö on linjan kärjessä ja häntä hoidetaan ensimmäisenä.
Uusien tulokkaiden on suunnattava jonon takaosaan ja odotettava vuoroaan. Joten ensimmäiseksi saapuvaan vastataan ensimmäisenä, kun taas viimeiseen saapuvaan vastataan viimeisenä.
Näin voit käyttää deque-toimintoa jonojen toteuttamiseen.
Append()- ja popleft()-menetelmien käyttäminen
Jos haluat käyttää deque-tiedostoa jonona, voit lisätä elementtejä lisäyksen oikeaan päähän append()- menetelmällä. Lisäksi voit käyttää popleft()- menetelmää elementtien poistamiseen dequen vasemmasta päästä.
Tämä on erittäin tehokas tapa toteuttaa jono Pythonissa. Tässä on esimerkki:
from collections import deque
queue = deque()
queue.append(1)
queue.append(2)
queue.append(3)
print(queue)
# Output: deque([1, 2, 3])
x = queue.popleft()
print(x)
# Output: 1
print(queue)
# Output: deque([2, 3])
Kuten näet, append()- menetelmä lisää elementtejä dequen oikeaan päähän ja popleft()- metodi poistaa elementtejä dequen vasemmasta päästä.
Tämä on juuri sitä, mitä tarvitsemme jonototeutuksessa.
Tarkistaa, onko tyhjennysjono tyhjä
Voit tarkistaa, onko deque tyhjä, käyttämällä not- operaattoria. Tässä on esimerkki:
from collections import deque
queue = deque()
if not queue:
print("Queue is empty")
else:
print("Queue is not empty")
Tämä tulostaa " Jono on tyhjä ", koska deque on tyhjä. Jos lisäät deque-elementtejä, se ei ole enää tyhjä.
Yhteenvetona voidaan todeta, että dequen käyttäminen jonona Pythonissa on erittäin tehokasta ja helppokäyttöistä.
Työskentely Dequen kanssa pinona
Kuten jonot, pinot ovat toinen esimerkki abstrakteista tietotyypeistä, joita voit käyttää tietojen järjestämiseen. Toisin kuin jonot, pinot toimivat LIFO-tyylillä.
Tämä tarkoittaa, että dequen viimeinen elementti on ensimmäinen elementti. Näin voit toteuttaa tämän käyttämällä taustalla olevaa tietorakennetta.
Append()- ja pop()-menetelmien käyttö
Kun käytät Dequea pinona, voit lisätä elementtejä pinon yläosaan append()- menetelmällä. Tämä menetelmä lisää elementin dequen oikeaan päähän.
Vastaavasti voit poistaa elementtejä pinon yläosasta pop()- menetelmällä. Tämä menetelmä poistaa ja palauttaa dequen oikeanpuoleisimman elementin.
Oletetaan esimerkiksi, että sinulla on deque nimeltä " my_stack " ja haluat lisätä elementin pinon yläosaan. Voit käyttää seuraavaa koodia:
my_stack.append(5)
Tämä lisää elementin 5 pinon yläosaan.
Jos haluat poistaa ylimmän elementin pinosta, voit käyttää pop()-menetelmää: `
bal = my_stack.pop()
print(bal)
# Output: 5
Tämä poistaa ja palauttaa dequen oikeanpuoleisimman elementin, joka tässä tapauksessa on 5.
Tarkistetaan tyhjää deque-objektia
Voit tarkistaa, onko tyhjennyspino tyhjä, käyttämällä loogista operaattoria “ not ”. Jos deque on tyhjä, " not my_deque " palauttaa True . Muussa tapauksessa se palauttaa False .
Oletetaan esimerkiksi, että sinulla on deque-pino nimeltä “ my_deque ” ja haluat tarkistaa, onko se tyhjä. Voit käyttää seuraavaa koodia:
if not my_deque:
print("The deque is empty")
else:
print("The deque is not empty")
Tämä tulostaa " Deque is empty ", jos deque on tyhjä. Jos se ei ole tyhjä, tuloste on " The deque is not empty ".
Kun työskentelet Dequen kanssa pinona, on tärkeää seurata, onko pino tyhjä vai ei. Jos yrität nostaa elementin tyhjästä pinosta, saat IndexError -ilmoituksen .
Mikä on rajoitettu deque?
Rajoitettu deque on kaksipäinen jono, jossa on joitain rajoituksia datan lisäys- ja pop-operaatioille dequen molemmissa päissä. On olemassa kaksi päätyyppiä rajoitettuja deques; Syöttörajoitetut dequet ja lähtörajoitetut dequet
Katsotaanpa niitä:
Input Restricted Deque
Syöttörajoitetun dequen avulla voit ponnahtaa tai poistaa dataelementtejä dequen molemmista päistä. Voit kuitenkin lisätä tietoelementtejä vain dequen yhdestä päästä.
Tämä on erittäin hyödyllistä sovelluksissa, joissa on muistirajoituksia. Voit käyttää sitä dataelementtien lisäämiseen kronologisessa järjestyksessä säilyttäen samalla mahdollisuuden hylätä tietoja dequen mistä tahansa päästä.
Lähtörajoitettu deque
Tuotosrajoitetun dequen avulla voit lisätä tietoja dequen molemmista päistä. Voit kuitenkin poistaa kohteita vain yhdestä dequen päästä, jota kutsutaan etupääksi.
Lähtörajoitettu deque on erittäin hyödyllinen tapauksissa, joissa sinun on otettava käyttöön FIFO-tietorakenne, mutta silti haluat toiminnallisuuden lisäävän tietoja molemmista päistä.
Kääritään tämä
Tähän mennessä sinulla pitäisi olla hyvä ymmärrys Pythonin deque-moduulista ja siitä, kuinka sitä voidaan käyttää tehokkaiden jonojen ja pinojen toteuttamiseen.
Deques on monipuolinen tietorakenne, joka tarjoaa monia etuja perinteisiin luetteloihin verrattuna. Nämä edut ovat ilmeisiä, kun kyse on muistia säästävistä liittämis- ja pop-operaatioista.
Ne ovat myös loistava valinta, kun sinun on otettava käyttöön pino tai kaksipäinen jono. Jotkut dequen käytön tärkeimmistä eduista ovat:
Tehokkaat O(1) append ja pop -operaatiot dequen molemmista päistä
Nopea O(1) pääsy dequen ensimmäiseen ja viimeiseen elementtiin
Sisäänrakennettu tuki kierreturvallisiin, atomitoimintoihin
Joustavat menetelmät elementtien lisäämiseen, poistamiseen ja pyörittämiseen
Kaiken kaikkiaan deque-moduuli on tehokas työkalu, jonka avulla voit kirjoittaa tehokkaampaa ja ylläpidettävämpää Python-koodia. Työskenteletpä sitten pienen käsikirjoituksen tai suuren mittakaavan projektin parissa, dequet ovat ehdottomasti harkitsemisen arvoisia vaihtoehtona perinteisille listoille tai muille tietorakenteille!
Valmiina oppimaan lisää Pythonista, katso soittolistamme alla
Ota selvää, miksi LuckyTemplatesissa on tärkeää pitää oma päivämäärätaulukko ja opi nopein ja tehokkain tapa tehdä se.
Tämä lyhyt opetusohjelma korostaa LuckyTemplates-mobiiliraportointiominaisuutta. Näytän sinulle, kuinka voit kehittää raportteja tehokkaasti mobiililaitteille.
Tässä LuckyTemplates Showcase -esittelyssä käymme läpi raportteja, jotka näyttävät ammattitaitoisen palveluanalytiikan yritykseltä, jolla on useita sopimuksia ja asiakkaiden sitoumuksia.
Käy läpi tärkeimmät Power Appsin ja Power Automaten päivitykset sekä niiden edut ja vaikutukset Microsoft Power Platformiin.
Tutustu joihinkin yleisiin SQL-toimintoihin, joita voimme käyttää, kuten merkkijono, päivämäärä ja joitain lisätoimintoja tietojen käsittelyyn tai käsittelyyn.
Tässä opetusohjelmassa opit luomaan täydellisen LuckyTemplates-mallin, joka on määritetty tarpeidesi ja mieltymystesi mukaan.
Tässä blogissa esittelemme, kuinka kerrostat kenttäparametreja pienillä kerroilla uskomattoman hyödyllisten näkemysten ja visuaalien luomiseksi.
Tässä blogissa opit käyttämään LuckyTemplates-sijoitus- ja mukautettuja ryhmittelyominaisuuksia näytetietojen segmentoimiseen ja luokitteluun kriteerien mukaan.
Tässä opetusohjelmassa käsittelen tiettyä tekniikkaa, jolla voit näyttää kumulatiivisen kokonaissumman LuckyTemplates-visuaaleissasi vain tiettyyn päivämäärään asti.
Opi luomaan ja mukauttamaan Bullet-kaavioita LuckyTemplatesissa, joita käytetään pääasiassa suorituskyvyn mittaamiseen suhteessa tavoitteeseen tai edellisiin vuosiin.