Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Haaste: Kontekstinhallitsijoiden Pinoaminen | Advanced File Handling & Context Managers
Pythonin Rakenteellinen Ohjelmointi
Osio 2. Luku 7
single

single

Haaste: Kontekstinhallitsijoiden Pinoaminen

Pyyhkäise näyttääksesi valikon

Olet tutustunut siihen, miten luodaan omia kontekstinhallitsijoita ja miten niitä käytetään sisäkkäin sekä useissa rinnakkaisissa rakenteissa. Nyt sinun tulee suunnitella ja toteuttaa omia kontekstinhallitsijoita, jotka toimivat sekä itsenäisesti että yhdessä, varmistaen resurssien oikean hankinnan ja vapauttamisen. Kiinnitä huomiota poikkeusten käsittelyyn sekä siihen, miten kontekstinhallitsijoihin siirtymisen ja niistä poistumisen järjestys vaikuttaa ohjelman toimintaan.

Tehtävä

Pyyhkäise aloittaaksesi koodauksen

Luo kaksi yksinkertaista kontekstinhallintaluokkaa nimeltä ManagerA ja ManagerB. Kummankin tulee tulostaa viesti, kun niiden kontekstiin siirrytään ja siitä poistutaan:

  • Sisään mentäessä tulosta "Entering ManagerA" tai "Entering ManagerB".
  • Poistuttaessa tulosta "Exiting ManagerA" tai "Exiting ManagerB".

Tee sitten seuraavat asiat:

  • Käytä ManagerA ja ManagerB sisäkkäisissä with-lauseissa (toinen toisen sisällä).
  • Käytä molempia managereita yhdessä with-lauseessa (samalla rivillä).

Tarkista tulostetut viestit nähdäksesi, missä järjestyksessä kumpaankin manageriin siirrytään ja niistä poistutaan.

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 2. Luku 7
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

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

some-alt