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.
Listojen ja muiden iteroitavien objektien käsittely on yleinen tehtävä . Joskus saatat joutua kiertämään näitä iteraatioita samalla kun pidät kirjaa nykyisen elementin indeksistä tai lukumäärästä. Siellä Pythonin sisäänrakennettu enumerate()-funktio tulee apuun.
Pythonin enumerate()-funktio tarjoaa sinulle kätevän tavan käyttää sekä kohteen hakemistoa että itse alkiota, kun selaat luetteloa tai mitä tahansa iteroitavaa objektia.
Tämä toiminto tekee , luettavasta ja tehokkaasta. Sen avulla voit selata elementtejä ja hakea sekä niiden indeksin että arvon. Sen sijaan, että alustat ja lisäät laskuria manuaalisesti silmukassa, voit luottaa siihen, että enumerate() tekee työn puolestasi.
Tässä artikkelissa opit Pythonin sisäänrakennetusta enumerate()-funktiosta, sen merkityksestä Python- koodissasi ja sen käyttötapauksista.
Mennään asiaan!
Sisällysluettelo
Mikä on Python Enumerate -funktio?
Kuvittele, että työskentelet luettelotietorakenteen kanssa ja haluat tehdä jotain jokaiselle kohteelle, mutta sinun on myös tiedettävä kohteen sijainti luettelossa.
Ilman Python enumerate() voit päättää käyttää laskurimuuttujaa, jota lisäät jokaisessa silmukan iteraatiossa. Mutta tämä lähestymistapa voi olla altis virheille, eikä se ole kovin "Pythonic".
Enumerate on Pythonin sisäänrakennettu toiminto, jonka avulla voit iteroida iteroitavissa olevia objekteja pitäen samalla kirjaa nykyisen kohteen hakemistosta.
Nyt kun olet ymmärtänyt, mikä Pythonin enumerate()-funktio on, siirrytään seuraavassa osiossa Python-funktion enumerate() syntaksiin!
Mikä on Python Enumerate -funktion syntaksi?
Funktion syntaksi määrittää, kuinka tätä funktiota tulee käyttää koodissasi, mukaan lukien mitä argumentteja se ottaa ja mitä se palauttaa.
Funktio enumerate () käyttää seuraavan syntaksin:
enumerate(, start=0)
: Tämä on pakollinen parametri, ja se voi olla mikä tahansa Python-iteroitava, kuten luettelo tai monikko.
start : Tämä toinen parametri on valinnainen parametri, joka määrittää laskurin aloitusarvon. Oletuksena se on 0.
enumerate () -funktion palautusarvo on enumerate-objekti, joka on iteraattori, jossa on parit (indeksi, elementti) kullekin tietyn iterable-kohdan alkiolle.
Voit käyttää tätä iteraattoria kohdassa a käyttääksesi sekä hakemistoa että alkiota samanaikaisesti.
Seuraava esimerkki näyttää, kuinka voit käyttää enumerate()- funktiota luettelon kanssa:
fruits = ['apple', 'banana', 'cherry']
for index, item in enumerate(fruits):
print(index, item)
Tässä esimerkissä enumerate() -silmukat enumerate-objektien, eli hedelmäluettelon , läpi ja määrittää jokaiselle kohteelle indeksin, alkaen 0:sta.
For - silmukka purkaa sitten indeksin ja alkion luetetusta objektista. Näin voit suorittaa toimintoja sekä indeksin että kohteen arvon perusteella.
Käytämme tulostustoimintoa indeksin ja kohteen tulostamiseen näytölle. Koodin tulos on alla olevassa kuvassa:
Tulosteessa näet, että aloitusindeksi on 0. Tämä on Python-tulkin automaattisesti määrittämän indeksin oletusarvo.
Voit kuitenkin myös määrittää laskurin eri aloitusarvon antamalla valinnaisen käynnistysparametrin alla olevan koodin mukaisesti:
for index, item in enumerate(fruits, start=1):
print(index, item)
Tulos on samanlainen kuin yllä oleva. Ainoa ero on, että indeksi alkaa nyt 1:stä.
Joten nyt sinulla on kahva enumerate()-funktion syntaksista Pythonissa. Mutta kuten minkä tahansa työkalun kanssa, on tärkeää tietää, milloin ja missä sitä käytetään.
Siksi aiomme tutkia joitain yleisiä käyttötapauksia enumerate()-funktiolle seuraavassa osassa!
5 Python Enumerate -funktion käyttötapaukset
Pythonin enumerate-toimintoa käytetään laajasti skenaarioissa, joissa sekä indeksi että iteroitavan objektin arvo ovat tärkeitä ohjelmoijalle.
Olemme luetelleet alla joitain yleisiä käyttötapauksia Pythonin luettelotoimintojen käyttöön.
1. Enumerate-toiminnon käyttäminen Python-luetteloiden kanssa
Pythonissa a on sisäänrakennettu tietorakenne, jonka avulla voit tallentaa useita kohteita yhteen muuttujaan. Ajattele luetteloa konttina, johon voit laittaa erilaisia tuotteita, ja he ylläpitävät järjestystä.
enumerate()-funktiota voidaan käyttää listoissa useilla tavoilla, kuten:
A. Listan elementtien ja niiden indeksien käyttäminen Python Enumerate -ohjelmalla
Yksi yleisimmistä enumerate():n käyttötapauksista on, kun sinun on käytettävä sekä luettelon elementtejä että niiden indeksejä. Enumerate antaa sinun tehdä tämän puhtaalla ja tehokkaalla tavalla.
Seuraavassa on esimerkki luettelon elementtien ja niiden indeksien käyttämisestä:
fruits = ['apple', 'banana', 'mango', 'grape', 'orange']
for index, fruit in enumerate(fruits):
print(f"At index {index}, the fruit is {fruit}.")
Tämän koodin tulos on alla olevassa kuvassa:
B. Listan elementtien muokkaaminen Python Enumerate -ohjelmalla
Kun haluat muokata luettelon elementtejä niiden indeksin perusteella, enumerate() on erinomainen työkalu. Voit käyttää hakemistoa silmukan sisällä ja muokata sitä luettelon avulla.
Seuraavassa on esimerkki luetteloelementtien muokkaamisesta enumerate-toiminnolla:
numbers = [1, 2, 3, 4, 5]
for i, num in enumerate(numbers):
numbers[i] = num * 2
Tämä Python-koodi luo numeroluettelon väliltä 1–5. Sitten se käyttää for-silmukkaa ja enumerate()-funktiota iteroidakseen luetteloa.
Jokaisella iteraatiolla se kertoo nykyisen numeron (num) kahdella ja määrittää sen uudelleen samaan kohtaan luettelossa (numerot[i]).
Tuloksena on, että kaikki alkuperäisen luettelon numerot tuplataan alla olevan kuvan mukaisesti:
C. Kahden listan elementtien vertailu Python Enumerate -sovelluksella
Jos vertaat kahden eri luettelon elementtejä, enumerate() voi tarjota indeksin, jonka tarvitset molempien luetteloiden elementtien käyttämiseen samanaikaisesti.
Seuraavassa on esimerkki enumerate-funktion käyttämisestä kahden luettelon elementtien vertailuun:
list1 = [1, 2, 3, 4, 5]
list2 = [1, 2, 3, 0, 5]
for i, value in enumerate(list1):
if value != list2[i]:
print(f"Difference at index {i}: {value} (list1) vs {list2[i]} (list2)")
Tässä koodissa määritämme ensin kaksi listaa, lista1 ja lista2. Sitten toistamme listan1 läpi käyttämällä for-silmukkaa enumerate(), joka tarjoaa indeksin (i) ja kunkin kohteen arvon.
Jos luettelon 1 nykyinen kohde ei vastaa vastaavaa kohdetta listassa 2, se tulostaa eron indeksin ja poikkeavat arvot molemmista listoista.
Tämän koodin tulos näkyy alla:
2. Enumerate-toiminnon käyttäminen Python Tuplesin kanssa
Pythonissa monikko on järjestetty kokoelma elementtejä, samanlainen kuin luettelo. Ainoa ero on, että monikko on muuttumaton, eli sen sisältöä ei voi muuttaa luomisen jälkeen.
Seuraavassa on joitain tapauksia, joissa voit käyttää enumerate-komentoa Python-kansojen kanssa.
A. Python Enumerate():n käyttäminen elementin etsimiseen monikkosta
Käsitellessäsi monikkoa Pythonissa saatat usein joutua etsimään, onko elementtiä monikkossa.
Seuraava esimerkkikoodi havainnollistaa enumerate-komentoa elementtien etsimiseen monikkosta:
fruits = ('apple', 'banana', 'mango', 'grape', 'orange')
for i, fruit in enumerate(fruits):
if fruit == 'mango':
print(f"'mango' found at position {i}")
Tämä koodi tulostaa "mango löytyi paikasta 2", koska "mango" on hakemistossa 2 monissa.
B. Python Enumerate():n käyttäminen sanakirjan luomiseen monistasta
Jos sinulla on monikko ja sinun on muutettava se sanakirjaksi, Pythonin enumerate()-funktio voi olla työkalusi.
Esimerkkikoodi näyttää, kuinka voit luoda sanakirjan monista enumerate-komennolla:
fruits = ('apple', 'banana', 'mango', 'grape', 'orange')
fruit_dict = {i: fruit for i, fruit in enumerate(fruits)}
print(fruit_dict)
Tämä koodi tulostaa sanakirjan, jossa avaimet ovat indeksit ja arvot monikko elementtejä.
3. Enumerate-toiminnon käyttäminen Python-sanakirjojen kanssa
Pythonissa sanakirja on muuttuva, järjestämätön , jossa jokaisen avaimen on oltava yksilöllinen. Ajattele sitä tosielämän sanakirjana: etsit sanan (avain) ja saat sen määritelmän (arvon).
Seuraavassa on joitain tapauksia, joissa voit käyttää enumeratea Python-sanakirjojen kanssa:
A. Sanakirjan avainten ja arvojen kiertäminen
Voit käyttää enumerate()-funktiota sanakirjan avaimien ja arvojen selaukseen.
Funktio enumerate() lisää laskurin iteroitavaan objektiin (kuten sanakirjoihin), jolloin pääset käsiksi nykyiseen indeksiarvoon.
Alla on sanakirja:
example_dict = {1: 'a', 2: 'b', 3: 'c', 4: 'd'}
for i, k in enumerate(example_dict):
print(i, k)
Tässä Python-koodissa luomme ensin sanakirjan nimeltä example_dict. Sitten käytämme enumerate()-funktiota iteroidaksemme sanakirjaa.
Jokaiselle iteraatiolle tulostetaan sanakirjasta silmukkamäärä (jonka antaa i ja alkaa 0:sta) ja nykyinen avain (joka on k).
B. Python Enumeraten yhdistäminen Items-funktioon
Voit myös käyttää sekä avaimia että sanakirjan arvoja items()- funktiolla yhdessä enumerate() -funktion kanssa . Item ()- funktio palauttaa iteroitavan kokoelman avainarvopareja monikkoina.
Alla oleva esimerkki osoittaa, kuinka voit käyttää items()- funktiota enumerate() -funktion kanssa :
example_dict = {1: 'a', 2: 'b', 3: 'c', 4: 'd'}
for i, (k, v) in enumerate(example_dict.items()):
print(i, k, v)
Tässä koodissa luomme sanakirjan nimeltä , jonka jälkeen käytämme enumerate()-funktiota iteroidaksemme sanakirjan avainarvopareja. Jokaisen iteroinnin aikana tulostamme silmukkaindeksin 'i', nykyisen avaimen 'k' ja sitä vastaavan arvon 'v'.
Sinulla on nyt vankka käsitys Pythonin enumerate()-funktion käytöstä joissakin yleisissä skenaarioissa. Mutta enumerate():llä on vielä enemmän tarjottavaa.
Sukellaanpa joitain edistyneitä käyttötapauksia, jotka ympäröivät enumerate():tä seuraavassa osiossa!
3 Python Enumeraten edistyneitä käyttötapauksia
Tässä osiossa mennään perusteita pidemmälle ja tutkitaan joitain Pythonin enumerate-funktion edistyneitä käyttötapauksia.
Käsittelemme seuraavat käyttötapaukset:
Enumeraten käyttö Python-luokkien kanssa
Enumeraten käyttö Enum-luokkien kanssa
Enumerate-sovelluksen käyttö tilauksen peruutukseen
Mennään asiaan!
1. Enumerate-toiminnon käyttö Python-luokkien kanssa
Python-ohjelmointimatkallasi saatat kohdata tilanteita, joissa haluat käyttää enumeratea mukautettujen luokkien kanssa.
Tämän saavuttamiseksi luokkasi tulisi ottaa käyttöön iter()- metodi, joka mahdollistaa sen iteroitavuuden.
Harkitse luokkaa Color , joka tallentaa värien nimet ja niihin liittyvät heksadesimaaliarvot:
class Color:
def __init__(self, colors: dict):
self.colors = colors
def __iter__(self):
return iter(self.colors.items())
colors = Color({"red": "#FF0000", "green": "#00FF00", "blue": "#0000FF"})
for index, (name, hex_value) in enumerate(colors):
print(f"{index}: {name} => {hex_value}")
Tässä koodissa luomme väriluokan, joka ottaa sanakirjan värien nimistä ja niitä vastaavista heksadesimaaliarvoista.
Kun käytät enumerate()-komentoa silmukassa, se tarjoaa indeksin jokaisen avain-arvo-parin mukana. Tämän avulla voit tulostaa indeksin, värin nimen ja sen heksadesimaaliarvon muotoiltuun merkkijonoon.
2. Python Enumerate -ohjelman käyttö Enum Classes -luokkien kanssa
Pythonissa on sisäänrakennettu Enum -luokka, jonka avulla voit luoda luettelointityyppejä automaattisesti määritetyillä kokonaislukuarvoilla.
Katso esimerkiksi seuraavaa koodia:
from enum import Enum, auto
class Direction(Enum):
NORTH = auto()
EAST = auto()
SOUTH = auto()
WEST = auto()
for index, direction in enumerate(Direction):
print(f"{index}: {direction.name} => {direction.value}")
Tässä komentosarjassa määritämme neljän jäsenen (POHJOINEN, ITÄ, ETELÄ ja LÄNSI) luettelointisuunnan Pythonin enum-moduulin avulla. Auto()-funktio määrittää jokaiselle jäsenelle automaattisen arvon.
Kun käytät enumerate()-komentoa silmukassa, se tarjoaa indeksin jokaisen luettelointijäsenen mukana. Näin voit tulostaa hakemiston, jäsenen nimen ja sille automaattisesti määritetyn arvon muotoillun merkkijonon muodossa.
Tämän koodin tulos on alla olevassa kuvassa:
3. Python Enumerate -ohjelman käyttäminen tilauksen käänteessä
Joissakin tapauksissa saatat haluta luetella kohteet käänteisessä järjestyksessä. Voit saavuttaa tämän käyttämällä sisäänrakennettua reversed()- funktiota yhdessä enumerate() -funktion kanssa .
Seuraava esimerkki osoittaa kohteiden luettelemisen käänteisessä järjestyksessä:
my_list = ["apple", "banana", "cherry"]
for index, item in enumerate(reversed(my_list)):
print(f"{index}: {item}")
Tässä koodissa toistamme my_list käänteisen version enumerate() avulla. Tämä tarjoaa sinulle indeksin ja kohteen käänteisestä luettelosta kussakin iteraatiossa. Sen avulla voit tulostaa hakemiston ja kohteen muotoillun merkkijonon muodossa.
Reverse () ei muuta alkuperäistä sekvenssiä; se luo uuden iteraattorin, joka esittää kohteet käänteisessä järjestyksessä.
Saat lisätietoja Pythonin toiminnoista katsomalla seuraavaa videota:
Lopulliset ajatukset
Kun jatkat Python-matkaasi, enumerate()-funktion hallitseminen on välttämätöntä. Se on työkalu, joka parantaa koodin luettavuutta ja tehokkuutta.
Käyttämällä enumerate() voit käyttää saumattomasti sekä indeksiä että silmukoidesi arvoa, mikä vähentää vastamuuttujien tai indeksoinnin tarvetta. Se yksinkertaistaa koodiasi ja tekee siitä pythonicisemman.
Iteroitpa luetteloita, ketjuja, merkkijonoja tai sanakirjoja, enumerate() osoittautuu arvokkaaksi työkaluksi. Ymmärtämällä ja harjoittelemalla enumerate(:lla) otat merkittävän askeleen Python-ohjelmointitaitosi hiomisessa!
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.