Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Järjestämättömien Kokoelmien Määrittely | Python-Joukkojen Hallinta
Pythonin Tietorakenteet
Osio 4. Luku 1
single

single

Järjestämättömien Kokoelmien Määrittely

Pyyhkäise näyttääksesi valikon

Set Pythonissa on järjestämätön kokoelma yksilöllisiä alkioita. Toisin kuin listat tai tuplet, setit eivät salli päällekkäisiä alkioita, mikä tekee niistä ihanteellisia esimerkiksi duplikaattien poistoon tai matemaattisiin joukko-operaatioihin. Setit ovat muokattavia (mutable), eli niiden alkioita voi lisätä tai poistaa, mutta joukon sisällä olevien tietojen täytyy olla muuttumattomia (esim. numerot, merkkijonot tai tuplet). Esimerkiksi settiä voi käyttää poistamaan päällekkäiset sähköpostiosoitteet käyttäjälistasta varmistaakseen, että jokainen osoite on yksilöllinen.

Note
Huomio

Set ei voi sisältää sanakirjoja tai listoja, koska molemmat ovat muokattavia tietotyyppejä.

Pythonissa setin voi luoda kahdella pääasiallisella tavalla:

  1. Käyttämällä aaltosulkeita {} ja erottamalla alkiot pilkuilla;
  2. Käyttämällä set()-funktiota.

Tärkeimmät asiat seteistä:

  • Muokattavuus: settiin voi lisätä tai siitä voi poistaa alkioita, mutta setin sisällä olevien alkioiden täytyy olla muuttumattomia;
  • Päällekkäiset alkiot: joukkoon lisätyt päällekkäiset alkiot poistetaan automaattisesti;
  • Järjestämättömyys: alkioiden järjestys setissä ei ole taattu ja voi vaihdella;
  • Monipuoliset tietotyypit: setit voivat sisältää eri tietotyyppejä, kuten merkkijonoja, kokonaislukuja tai tupleja.

Määritellään set käyttämällä set()-funktiota:

123
# Creating a set which contains strings movie_set = set("Interstellar") print(movie_set)

Seuraavaksi määritellään joukko suosittuja elokuvia käyttämällä aaltosulkeita:

123
# Creating a set of movies using curly braces movies = {"Inception", "Interstellar", "Tenet", "Dunkirk", "Tenet"} print(movies)

Kaksoiskappaleet, kuten "Tenet", poistetaan automaattisesti, kun joukko luodaan.

Rajoitukset joukkojen luomisessa

set()-funktion syntaksilla on tietyt vaatimukset. Jos yrität antaa useita argumentteja suoraan, esimerkiksi:

set("Tenet", "Dunkirk", "Inception")

Törmäät TypeError-virheeseen, koska set()-funktio odottaa yhtä iteroitavaa argumenttina, ei useita erillisiä arvoja.

Jos haluat luoda joukon, jossa on useita alkioita, sinun tulee antaa ne yhtenä iteroitavana:

123
# Using a list `[]` movies = set(["Tenet", "Dunkirk", "Inception"]) print(movies)
123
# Using a tuple `(,)` movies = set(("Tenet", "Dunkirk", "Inception")) print(movies)
Tehtävä

Pyyhkäise aloittaaksesi koodauksen

Aloitetaan harjoittelu joukkojen kanssa.

  • Alusta joukko nolan_movies seuraavilla elokuvilla: "Inception", "The Dark Knight", "Interstellar", "Tenet".
  • Käytä aaltosulkeita ({}) joukon luomiseen.

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 1
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

some-alt