Python Academy · Oppitunti

Monikot ja muuttumattomuus

Ymmärtäkää monikot, niiden muuttumattomuus ja tilanteet, joissa niitä kannattaa suosia listoihin nähden.

Oppitunti 3/414 vaihetta

Monikot ja muuttumattomuus on ilmainen Python Academy-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Python Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Python Academy-kurssilla on yhteensä 4 oppituntia.

Johdanto

Tuplet ovat järjestettyjä, muuttumattomia sarjoja. Kun ne on luotu, niiden alkioita ei voi muuttaa.

Monikkojen luominen

t = (1, 2, 3) tai t = 1, 2, 3 (sulkeet ovat valinnaiset). Yhden alkion monikko tarvitsee loppuun pilkun: t = (1,).
t = (1, 2, 3)
singleton = (42,)
print(t, singleton)

Monikkojen muuttumattomuus

t[0] = 99 aiheuttaa TypeError-virheen. Monikkoja ei voi muuttaa niiden luomisen jälkeen. Tämä on niiden määrittävä ominaisuus.
t = (1, 2, 3)
# t[0] = 99  # TypeError
print(t[0])

Monikkojen indeksointi ja viipalointi

t[0], t[-1], t[1:3] toimivat kaikki samalla tavalla kuin listoilla. Monikot tukevat kaikkia lukuoperaatioita.
t = (10, 20, 30)
print(t[1])
print(t[:2])

Monikkojen pakkaaminen ja purkaminen

a, b = (1, 2) purkaa monikon. Myös tämä toimii: a, b = b, a, jolloin muuttujat voi vaihtaa ilman väliaikaista muuttujaa.
a, b = 1, 2
a, b = b, a
print(a, b)

Monikot sanakirja-avaimina

Koska monikot ovat hashattavia, niitä voi käyttää sanakirjan avaimina: coords = {(0,0): 'origin'}. Listoja ei voi käyttää sanakirjan avaimina.
coords = {(0, 0): 'origin', (1, 0): 'right'}
print(coords[(0, 0)])

Monikko vai lista — milloin kumpaa käytetään

Käyttäkää monikkoja heterogeenisille, rakenteeltaan kiinteille tiedoille, kuten (name, age). Käyttäkää listoja homogeenisille, pituudeltaan muuttuville tiedoille.
point = (3.0, 4.0)  # tuple: fixed structure
scores = [85, 90, 78]  # list: variable

Nimetyt monikot

from collections import namedtuple; Point = namedtuple('Point', ['x','y']); p = Point(3,4); p.x antaa tulokseksi 3.
from collections import namedtuple
Point = namedtuple('Point', ['x', 'y'])
p = Point(3, 4)
print(p.x, p.y)

Monikkojen metodit

Monikoilla on vain metodit count() ja index(). t.count(2) laskee esiintymien määrän. t.index(2) palauttaa ensimmäisen sijainnin.
t = (1, 2, 2, 3)
print(t.count(2))
print(t.index(2))

Monikkojen suorituskyky

Monikot ovat hieman nopeampia ja käyttävät vähemmän muistia kuin listat, koska Python voi optimoida muuttumattomia objekteja.
import sys
print(sys.getsizeof((1,2,3)))
print(sys.getsizeof([1,2,3]))

Listan ja monikon muuntaminen toisikseen

list(t) muuntaa monikon listaksi. tuple(lst) muuntaa listan monikoksi. Tämä on hyödyllistä, kun tarvitsette muokattavuutta tilapäisesti.
t = (1, 2, 3)
lst = list(t)
lst.append(4)
t2 = tuple(lst)
print(t2)

Pikatarkistus

Miksi monikkoja voi käyttää sanakirjan avaimina mutta listoja ei?

Kertaus

Monikot ovat muuttumattomia, järjestettyjä ja hashattavia. Käyttäkää niitä rakenteeltaan kiinteille tiedoille, sanakirja-avaimille ja useiden arvojen palauttamiseen. namedtuple lisää attribuuttien kautta tapahtuvan käytön.

Jatkakaa

Hienosti tehty! Siirtykää seuraavaan oppituntiin jatkaaksenne taitojenne kehittämistä.
Aloita maksutta

Opi Python tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
76
Oppitunnit
320

Usein kysytyt kysymykset

Onko oppitunti ”Monikot ja muuttumattomuus” ilmainen?

Kyllä – oppitunnin ”Monikot ja muuttumattomuus” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Python Academy-kurssin, päivitä CoddyKit PROhon. Python Academy-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Monikot ja muuttumattomuus”?

Ymmärtäkää monikot, niiden muuttumattomuus ja tilanteet, joissa niitä kannattaa suosia listoihin nähden. Harjoittelet Python Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Python Academy-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Python Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.

Kuinka kauan ”Monikot ja muuttumattomuus”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Python Academy-oppitunnilla?

Kyllä. Jokainen Python Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Listojen luominen ja käyttäminen
  2. Listojen muokkaaminen
  3. Monikot ja muuttumattomuus
  4. Sisäkkäiset listat ja iterointi
← Takaisin: Python Academy