Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Listakomprehensiot Ehdoilla | Lista- ja Sanakirjakehitelmät
Python-silmukoiden Opas

Listakomprehensiot Ehdoilla

List comprehensionit mahdollistavat alkioiden suodattamisen ja käsittelyn tehokkaasti. Syntaksi:

[expression for element in iterable if condition]

Tämän syntaksin avulla voit luoda uuden listan sisällyttämällä vain ne alkiot, jotka täyttävät määritellyn ehdon.

1234567891011121314
travel_wishlist = [ ['Paris', 'France', 2000], ['Tokyo', 'Japan', 3000], ['New York', 'USA', 2500], ['Kyoto', 'Japan', 1500], ['Sydney', 'Australia', 4000] ] japanese_cities = [] for city in travel_wishlist: if city[1] == 'Japan': japanese_cities.append(city[0]) print(japanese_cities) # Output: ['Tokyo', 'Kyoto']

Tämä koodi käyttää for-silmukkaa ja if-ehtoa käydäkseen läpi travel_wishlist-listan ja tarkistaakseen, onko maa "Japan". Jos ehto täyttyy, kaupungin nimi lisätään japanese_cities-listaan.

12345678910
travel_wishlist = [ ['Paris', 'France', 2000], ['Tokyo', 'Japan', 3000], ['New York', 'USA', 2500], ['Kyoto', 'Japan', 1500], ['Sydney', 'Australia', 4000] ] japanese_cities = [city[0] for city in travel_wishlist if city[1] == 'Japan'] print(japanese_cities) # Output: ['Tokyo', 'Kyoto']

Tämä esimerkki saavuttaa saman tuloksen kuin edellinen, mutta tiiviimmässä muodossa. Listan ymmärrys poimii kaupunkien nimet, joissa maa on "Japan", yhdellä koodirivillä.

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 2
single

single

Listakomprehensiot Ehdoilla

Pyyhkäise näyttääksesi valikon

List comprehensionit mahdollistavat alkioiden suodattamisen ja käsittelyn tehokkaasti. Syntaksi:

[expression for element in iterable if condition]

Tämän syntaksin avulla voit luoda uuden listan sisällyttämällä vain ne alkiot, jotka täyttävät määritellyn ehdon.

1234567891011121314
travel_wishlist = [ ['Paris', 'France', 2000], ['Tokyo', 'Japan', 3000], ['New York', 'USA', 2500], ['Kyoto', 'Japan', 1500], ['Sydney', 'Australia', 4000] ] japanese_cities = [] for city in travel_wishlist: if city[1] == 'Japan': japanese_cities.append(city[0]) print(japanese_cities) # Output: ['Tokyo', 'Kyoto']

Tämä koodi käyttää for-silmukkaa ja if-ehtoa käydäkseen läpi travel_wishlist-listan ja tarkistaakseen, onko maa "Japan". Jos ehto täyttyy, kaupungin nimi lisätään japanese_cities-listaan.

12345678910
travel_wishlist = [ ['Paris', 'France', 2000], ['Tokyo', 'Japan', 3000], ['New York', 'USA', 2500], ['Kyoto', 'Japan', 1500], ['Sydney', 'Australia', 4000] ] japanese_cities = [city[0] for city in travel_wishlist if city[1] == 'Japan'] print(japanese_cities) # Output: ['Tokyo', 'Kyoto']

Tämä esimerkki saavuttaa saman tuloksen kuin edellinen, mutta tiiviimmässä muodossa. Listan ymmärrys poimii kaupunkien nimet, joissa maa on "Japan", yhdellä koodirivillä.

Tehtävä

Pyyhkäise aloittaaksesi koodauksen

Hallitset travel_wishlist-listaa, jossa jokainen kohde sisältää tietoja kuten kaupungin nimi ja arvioitu kustannus. Tavoitteena on luoda suodatettu lista kaupungeista budjettirajoitusten perusteella.

  • Poimi kaupungin nimet travel_wishlist-listasta.
  • Sisällytä vain kaupungit, joiden arvioitu kustannus on alle $2500.
  • Hyödynnä listan käsittelevää list comprehensionia tämän toteuttamiseen tehokkaasti.
  • Tallenna suodatetut kaupungin nimet affordable_cities-listaan.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 4. Luku 2
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

some-alt