For-silmukat Eri Rakenteilla
Tarkastellaan for-silmukan käyttöä eri tietorakenteiden kanssa.
Pythonin for-silmukoita voidaan käyttää kaikkien iteroitavien olioiden (lists, tuples, dictionaries, strings) kanssa, mikä mahdollistaa tietojen käsittelyn yksittäisen alkion tasolla.
Olipa tarpeena käsitellä listan alkioita, sanakirjan avaimia tai arvoja, tai merkkijonon merkkejä, for-silmukat tarjoavat selkeän syntaksin, joka yksinkertaistaa toistuvia tehtäviä.
Alla esimerkki siitä, miten for-silmukkaa käytetään iteroimaan merkkijonon ja tuplen alkioiden yli, samalla tavalla kuin aiemmin listojen kanssa:
123456789# Print each letter in the string vegetable = "Carrot" for letter in vegetable: print(letter) # Tuple containing different categories of the grocery store categories = ("Produce", "Bakery", "Meat", "Dairy") for category in categories: print(category)
Yllä olevassa esimerkissä käydään läpi jokainen kirjain merkkijonossa ja jokainen alkio tuplessa, tulostaen ne yksi kerrallaan. Tämä havainnollistaa, kuinka for-silmukat voivat käsitellä kaikkia alkioita erilaisissa jonoissa, tehden koodista sekä tehokasta että helposti luettavaa.
Kun käytetään for-silmukkaa sanakirjan kanssa, iteraatio sanakirjan yli käy oletuksena läpi sen avaimet.
Tältä näyttää, kun iteroit suoraan sanakirjan yli:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary key print("Product list:") for product in productStock: print(product)
Huomaa, että iteraattorimuuttuja product viittaa vain sanakirjan avaimiin.
Jos haluat iteroida sanakirjan arvojen yli, voit käyttää values()-metodia.
Tämä on hyödyllistä tilanteissa, joissa tarvitset pääsyn arvoihin ilman, että viittaat avaimiin:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary value print("Stock counts:") for stock in productStock.values(): print(stock)
Jos tarvitsee käyttää avaimia ja arvoja samanaikaisesti, items()-metodi mahdollistaa sanakirjan avain-arvo-parien läpikäynnin.
Tätä metodia käytettäessä for-silmukassa määritellään kaksi muuttujaa ennen in-avainsanaa — yksi avaimelle (product) ja yksi arvolle (stock):
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print both the key and value for each dictionary item print("Inventory details:") for product, stock in productStock.items(): print(f"{product} has {stock} units in stock.")
Tässä esimerkissä käytämme f-merkkijonoja (tunnetaan myös nimellä muotoillut merkkijonot) upottaaksemme muuttujat suoraan merkkijonoon. Syntaksi on yksinkertainen: lisää f ennen avauslainausmerkkiä " ja sijoita muuttujat tai lausekkeet aaltosulkeisiin {} merkkijonon sisällä. Tämä tapa tekee merkkijonojen ja muuttujien yhdistämisestä tulostuslauseissa huomattavasti selkeämpää, joten sen opetteleminen kannattaa.
Hyödyntämällä tietämystäsi if/else-rakenteista, loogisista operaattoreista ja for-silmukoista, voimme suorittaa yksinkertaisen varastotarkistuksen sanakirjalle:
123456789101112131415161718# Product names as keys and their stock levels as values inventory = { "milk": 120, "eggs": 30, "bread": 80, "apples": 10 } # The threshold stock level that triggers a restock minimum_stock = 50 # Evaluating stock levels and deciding if restocking is necessary print("Checking inventory status:") for product, quantity in inventory.items(): if quantity < minimum_stock: print(f"{product} requires restocking. Only {quantity} units remain.") else: print(f"{product} has adequate stock with {quantity} units available.")
Saatat huomata, että olemme sijoittaneet if-lauseet for-silmukan sisään, mikä lisäsi ylimääräisen sisennyksen if-lohkoon. Kuten aiemmin mainittiin, jokainen sisennetty koodilohko voidaan käsitellä itsenäisenä riippumatta siitä, mihin se on sijoitettu. Tärkeintä on varmistaa, että sisennys on yhtenäinen ja oikein niiden välillä.
Swipe to start coding
Käy läpi sanakirja, joka sisältää ruokakaupan tuotteita ja niiden hinnat. Jokaiselle tuotteelle:
- Käytä for-silmukkaa iteroidaksesi
grocery-sanakirjan läpi; - Tulosta sekä tuote (avain) että sen hinta (arvo) silmukan sisällä.
Ratkaisu
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Mahtavaa!
Completion arvosana parantunut arvoon 1.89
For-silmukat Eri Rakenteilla
Pyyhkäise näyttääksesi valikon
Tarkastellaan for-silmukan käyttöä eri tietorakenteiden kanssa.
Pythonin for-silmukoita voidaan käyttää kaikkien iteroitavien olioiden (lists, tuples, dictionaries, strings) kanssa, mikä mahdollistaa tietojen käsittelyn yksittäisen alkion tasolla.
Olipa tarpeena käsitellä listan alkioita, sanakirjan avaimia tai arvoja, tai merkkijonon merkkejä, for-silmukat tarjoavat selkeän syntaksin, joka yksinkertaistaa toistuvia tehtäviä.
Alla esimerkki siitä, miten for-silmukkaa käytetään iteroimaan merkkijonon ja tuplen alkioiden yli, samalla tavalla kuin aiemmin listojen kanssa:
123456789# Print each letter in the string vegetable = "Carrot" for letter in vegetable: print(letter) # Tuple containing different categories of the grocery store categories = ("Produce", "Bakery", "Meat", "Dairy") for category in categories: print(category)
Yllä olevassa esimerkissä käydään läpi jokainen kirjain merkkijonossa ja jokainen alkio tuplessa, tulostaen ne yksi kerrallaan. Tämä havainnollistaa, kuinka for-silmukat voivat käsitellä kaikkia alkioita erilaisissa jonoissa, tehden koodista sekä tehokasta että helposti luettavaa.
Kun käytetään for-silmukkaa sanakirjan kanssa, iteraatio sanakirjan yli käy oletuksena läpi sen avaimet.
Tältä näyttää, kun iteroit suoraan sanakirjan yli:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary key print("Product list:") for product in productStock: print(product)
Huomaa, että iteraattorimuuttuja product viittaa vain sanakirjan avaimiin.
Jos haluat iteroida sanakirjan arvojen yli, voit käyttää values()-metodia.
Tämä on hyödyllistä tilanteissa, joissa tarvitset pääsyn arvoihin ilman, että viittaat avaimiin:
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print each dictionary value print("Stock counts:") for stock in productStock.values(): print(stock)
Jos tarvitsee käyttää avaimia ja arvoja samanaikaisesti, items()-metodi mahdollistaa sanakirjan avain-arvo-parien läpikäynnin.
Tätä metodia käytettäessä for-silmukassa määritellään kaksi muuttujaa ennen in-avainsanaa — yksi avaimelle (product) ja yksi arvolle (stock):
1234567# Dictionary of products and their stock counts productStock = {"milk": 120, "eggs": 200, "bread": 80} # Print both the key and value for each dictionary item print("Inventory details:") for product, stock in productStock.items(): print(f"{product} has {stock} units in stock.")
Tässä esimerkissä käytämme f-merkkijonoja (tunnetaan myös nimellä muotoillut merkkijonot) upottaaksemme muuttujat suoraan merkkijonoon. Syntaksi on yksinkertainen: lisää f ennen avauslainausmerkkiä " ja sijoita muuttujat tai lausekkeet aaltosulkeisiin {} merkkijonon sisällä. Tämä tapa tekee merkkijonojen ja muuttujien yhdistämisestä tulostuslauseissa huomattavasti selkeämpää, joten sen opetteleminen kannattaa.
Hyödyntämällä tietämystäsi if/else-rakenteista, loogisista operaattoreista ja for-silmukoista, voimme suorittaa yksinkertaisen varastotarkistuksen sanakirjalle:
123456789101112131415161718# Product names as keys and their stock levels as values inventory = { "milk": 120, "eggs": 30, "bread": 80, "apples": 10 } # The threshold stock level that triggers a restock minimum_stock = 50 # Evaluating stock levels and deciding if restocking is necessary print("Checking inventory status:") for product, quantity in inventory.items(): if quantity < minimum_stock: print(f"{product} requires restocking. Only {quantity} units remain.") else: print(f"{product} has adequate stock with {quantity} units available.")
Saatat huomata, että olemme sijoittaneet if-lauseet for-silmukan sisään, mikä lisäsi ylimääräisen sisennyksen if-lohkoon. Kuten aiemmin mainittiin, jokainen sisennetty koodilohko voidaan käsitellä itsenäisenä riippumatta siitä, mihin se on sijoitettu. Tärkeintä on varmistaa, että sisennys on yhtenäinen ja oikein niiden välillä.
Swipe to start coding
Käy läpi sanakirja, joka sisältää ruokakaupan tuotteita ja niiden hinnat. Jokaiselle tuotteelle:
- Käytä for-silmukkaa iteroidaksesi
grocery-sanakirjan läpi; - Tulosta sekä tuote (avain) että sen hinta (arvo) silmukan sisällä.
Ratkaisu
Kiitos palautteestasi!
single