- Python Illustrated käyttää tarinankerrontaa, hahmoja ja käsin piirrettyjä kaavioita tehdäkseen Pythonista lähestyttävän myös täysin aloittelijoille.
- Ydinaiheita ovat asennus, syntaksi, tietotyypit, ohjausvuo, funktiot, tiedostojen I/O, poikkeukset ja olio-ohjelmointi.
- Harjoitukset, tietokilpailut, lambda-tehtävät, ymmärryksen analysointi ja OOP kurovat umpeen kuilua leikkisästä oppimisesta vankkoihin, tosielämän Python-taitoihin.
- Narratiivisten oppaiden yhdistäminen jäsenneltyihin viitteisiin antaa oppijoille sekä intuitiota että syvällistä ja systemaattista ymmärrystä Pythonista.

Pythonin oppimisen ei tarvitse tuntua kuivan käyttöohjeen lukemiselta tai tuskin ymmärrettävän koodin seinien kanssa kamppailulta. Itse asiassa uusi aalto aloittelijaystävällisiä kirjoja lähestyy Pythonia visuaalisena, tarinavetoisena seikkailuna, jossa seuraat omituisia hahmoja, ratkaiset pieniä haasteita ja omaksut vähitellen ydinohjelmointiideoita edes tajuamatta, kuinka paljon olet oppinut.
Näistä ”Python Illustrated” erottuu oppaana, joka yhdistää käsin piirrettyä taidetta, huumoria, huolellisesti tahdistettua teoriaa ja käytännön harjoituksia yhdeksi kokemukseksi. Sen sijaan, että sinut hautattaisiin ammattikieleen, se antaa teräväjärkisen kissan ja hieman hämmentyneen mäyräkoiran opastaa sinua kaiken läpi Pythonin asentaminen olio-ohjelmointiin, virheenkorjaukseen ja jopa funktionaalisiin rakenteisiin, kuten lambda-käskyihin ja comprehension-lausekkeisiin. Sen ympärillä on kokonainen ekosysteemi perinteisempiä mutta silti helposti saatavilla olevia Python-kirjoja ja PDF-tiedostoja, jotka syventyvät syntaksiin, tietotyyppeihin, ohjauskulkuun, funktioihin, luokkiin ja edistyneisiin aiheisiin.
Mikä tekee "Python Illustratedista" erilaisen kuin muut Python-kirjat?
”Python Illustratedin” ytimessä on fiktiivinen matka, jonka pääosissa ovat kissa Zia ja mäyräkoira Wiesje, jotka tutkivat Pythonia yhdessä ja peilaavat aloittelijan ajattelutapaa. Zia on fiksu, kärsivällinen ja kokenut koodaaja, kun taas Wiesje edustaa oppijaa, joka murehtii virheiden tekemistä, jumiin jäämistä tai uuden kahvikupin tarvetta ennen seuraavan haasteen tarttumista.
Tämä kerronnan kehystäminen ei ole vain söpö kikka: sitä käytetään käsitteiden esittelyyn luonnollisessa järjestyksessä ja mallintamaan, miten todellinen oppija ajattelee. Kun kirja selittää jotakin hankalaa – kuten silmukoita, virheenjäljitystä tai luokkia – Wiesje usein valittaa, epäröi tai kysyy juuri niitä kysymyksiä, joita lukijat mielessään miettivät. Zia vastaa rauhallisilla selityksillä, analogioilla ja visuaalisilla apuvälineillä, jotka auttavat näkemään, miten kukin osa sopii laajempaan Python-maisemaan.
Yksi silmiinpistävimmistä puolista on käsin piirretty kuvitustyyli, joka korvaa tavanomaiset steriilit kuvakaappaukset. Esimerkiksi kun kirja näyttää pääteikkunan tai VS Coden debuggerin, se ei liitä vain kuvakaappausta; se piirtää yksinkertaistetun version, jossa on hienovaraisia korostuksia ja nuolia kohtiin, jotka sinun todella on huomioitava – kuten missä keskeytyskohdat sijaitsevat, mikä paneeli näyttää muuttujat ja missä virheilmoitukset sijaitsevat.
Nämä kuvat ovat erityisen arvokkaita visuaalisille oppijoille, jotka eksyvät sekaviin käyttöliittymiin. Sen sijaan, että yrittäisit dekoodata koko IDE-näyttö, näet vain olennaiset osat, ja yksityiskohtia on juuri sen verran, että voit seurata niitä myöhemmin omalla tietokoneellasi. Monet arvioijat korostavat juuri tätä visuaalista selkeyttä: et tuhlaa huomiotasi etsimällä näytöltä olennaisia asioita; piirustukset kertovat sinulle suoraan.
”Python Illustratedin” sävy on tarkoituksellisen lämmin, inhimillinen ja toisinaan leikkisän itseironinen. Wiesjen kommentit kävelylenkin tai toisen kahvikupin tarpeesta vaikeina aikoina ovat lempeä muistutus siitä, että kamppailu on odotettavissa, eivätkä ne ole merkki siitä, että "et ole luotu ohjelmointiin". Zia korostaa toistuvasti, että ohjelmointi on aluksi haastavaa kaikille ja että kärsivällisyys on osa prosessia.
Kenelle ”Python Illustrated” on tarkoitettu, ja mitä se käsittelee?
Kirja on suunnattu ensisijaisesti täysin aloittelijoille tai vähän koodausta omaaville henkilöille, jotka haluavat tutustua Pythoniin lempeästi mutta vakavasti otettavalla tavalla. Tämä tarkoittaa, että et tarvitse aiempaa kokemusta muuttujista, silmukoista tai funktioista. Jos osaat kirjoittaa, seurata ohjeita ja olet utelias, kuulut kohderyhmään. Se sopii myös hyvin mentoreille, jotka haluavat strukturoidun resurssin uuden oppijan opastamiseen.
Kirjoittajat keskittyvät kuratoituun, käytännölliseen Python-kielen osajoukkoon sen sijaan, että yrittäisivät ahtaa siihen kaikki hämärät ominaisuudet. Käyt läpi Pythonin asennuksen, kehitysympäristön valinnan, terminaalin käytön ja ohjelmoinnin rakennuspalikoiden edetessä:
- Pythonin ja a:n asentaminen koodieditori tai IDE (esimerkeillä VS Codea käyttäen ja johdatus debuggeriin)
- Muuttujat ja perustietotyypit kuten numerot, merkkijonot ja totuusarvot
- Kaikki tuotteetlistat, tuplet ja sanakirjat, mukaan lukien kunkin soveltuvuus
- Ehdolliset lauseet ja silmukat: jos, elif, muuten, varten ja kun
- Tehtävätparametrit, paluuarvot ja logiikan uudelleenkäyttö
- Tiedostojen käsittely: tiedostoista lukeminen ja niihin kirjoittaminen
- Olio-ohjelmointi: luokat, ominaisuudet ja periytyminen
- Virheenkorjaus VS Codessa, mukaan lukien keskeytyspisteet ja tarkastustila
- Seuraavat askeleet kirjan jälkeen, kuten edistyneempien aiheiden tai ulkoisten kirjastojen tutkiminen
Arvioijat korostavat, että aiheiden järjestys ei ole sattumaa. Kirja ei esimerkiksi hyppää silmukoihin tyhjästä; se ensin perehdyttää sinut listoihin ja sanakirjoihin, jotta kun kohtaat for-lausekkeen, olet valmis näkemään, miten se iteroi näiden kokoelmien läpi. Samoin olio-ohjelmointi on kehitetty perustaksi, ei akateemiseksi harjoitukseksi: saat juuri sen verran tietoa luokista ja periytymisestä, että voit lukea keskitason kirjoja myöhemmin luottavaisin mielin.
Muutamia tarkoituksellisia puutteita on jätetty pois, pääasiassa edistyneitä tai harvoin käytettyjä kieliominaisuuksia, kuten ei-lokaalisia tai tyyppimäärittelyjä. Perustelu on yksinkertainen: aloittelijat hyötyvät enemmän siitä, että he hallitsevat päivittäin käyttämänsä kielen ydinosaamisen eli 80 %:n, kuin siitä, että he painiskelevat ensimmäisen luvun marginaalisten ominaisuuksien kanssa. Kun ydinosaaminen on vankka, on paljon helpompi poimia syvällisempiä yksityiskohtia muista lähteistä.
Yksi alue, jolla jotkut tekniset arvioijat ehdottavat enemmän kattavuutta, on ympäristönhallinta ja ulkoiset paketit. Kirja kyllä opastaa sinua Pythonin asentamisessa ja paikallisessa koodin kirjoittamisessa, mutta se ei mene syvällisemmin... virtuaaliympäristöt tai työkaluja, kuten uv, venv tai conda, projektien eristämiseen ja PyPI:stä riippuvuuksien hallintaan. Täysin aloittelijalle tämä on luultavasti reilu kompromissi, mutta sitä kannattaa tutkia, kun olet lukenut Zian ja Wiesjen tarinan.
Käytännönläheinen oppiminen: harjoituksia, tietokilpailuja ja virheenkorjausta
”Python Illustrated” ei ole vain koodilla maustettu satukirja; se on työkirja, joka on täynnä interaktiivisia harjoituksia, tietokilpailuja ja käytännön testejä ymmärryksesi arvioimiseksi. Lähes jokainen luku päättyy tehtäviin, joissa sinua pyydetään kirjoittamaan, muokkaamaan tai debugaamaan pieniä skriptejä pelkän lukemisen sijaan. Kirja sisältää ratkaisuja, joiden avulla voit verrata koodiasi toimivaan esimerkkiin ja nähdä vaihtoehtoisia tapoja ratkaista sama ongelma.
Tämä interaktiivinen tyyli tekee kirjasta hyödyllisen sekä itseopiskeluun että ohjattuun opetukseen. Jos työskentelet oppilaan tai mentoroitavan kanssa, voit antaa luvun lopun harjoitukset ja sitten käydä ratkaisut läpi rinnakkain. Koska esimerkit on kehystetty hahmojen ja huumorin avulla, ne tuntuvat vähemmän kuivilta kotitehtäviltä ja enemmän tarinan jatkamiselta.
Yksi ulottuvuus, jota kirja käsittelee aloittelijoille epätavallisen hyvin, on virheenkorjaus. Monissa johdantoteksteissä mainitaan virheenkorjaus ohimennen, mutta ”Python Illustrated” omistaa tilaa sen selittämiselle, miten se tehdään. käytä VS Coden debuggeria, jälleen käsin piirrettyjen käyttöliittymäkaavioiden kera. Näet, mihin pysäytyspisteet sijoitetaan, miten koodissa askelletaan, mistä muuttujia tarkastellaan ja miten arvojen muutoksia voidaan seurata ohjelman suorituksen aikana.
Tämän tason visuaalinen selitys selventää sitä, mitä monet tulokkaat pitävät "tehokäyttäjän työkaluna". Kun olet katsonut Zian opastavan Wiesjeä funktion yli astumisessa tai suorituksen keskeyttämisessä ehdon täyttyessä, on paljon todennäköisempää, että kokeilet debuggeria itse pelkkien tulostuslausekkeiden sijaan.
Taukojen, häiriötekijöiden ja "jonkin oudon haistamisen seuraavassa osiossa" käsittelevä huumori on enemmän kuin pelkkää makua. Se rakentaa empatiaa ja normalisoi ajatuksen siitä, että debugaamisen oppiminen, kuten koodaamisen oppiminen ylipäätään, on iteratiivista ja epätäydellistä. Tällä asenteella voi olla yllättävä vaikutus siihen, jatkavatko aloittelijat, kun jokin ei toimi ensimmäisellä kerralla.
Narratiivisista oppaista strukturoituihin hakuteoksiin
Vaikka ”Python Illustrated” nojaa vahvasti tarinankerrontaan ja visuaalisuuteen, tarjolla on myös perinteisempiä, viitteellisiä tekstejä, jotka vievät sinut nollasta vankkaan keskitason Pythoniin systemaattisesti luku luvulta. Nämä kirjat tulevat usein ladattavina PDF-tiedostoina ja ne on rakennettu standardin mukaisen etenemisen mukaan: asennus, syntaksi, tietotyypit, ohjauskulku, funktiot, poikkeukset, tiedostojen I/O ja olio-ohjelmointi.
Hyvä esimerkki on kuvitettu Python 3 -opas, joka alkaa perusteilla siitä, miksi Python on suosittu ja mikä tekee sen oppimisesta helpompaa kuin monia muita kieliä. Kirjoittaja korostaa etuja, kuten yksinkertaista syntaksia, sisennyksiin perustuvia koodilohkoja, dynaamista tyypitystä ja sitä, että sinun ei tarvitse jatkuvasti taistella puolipisteiden, aaltosulkeiden tai tyyppimäärittelyjen kanssa. Näet myös Pythonin laajemman ekosysteemin: verkkokehykset, kuten Django ja Pullo, datatieteen ja koneoppimisen kirjastot, kuten scikit-learn, TensorFlow ja Keras, sekä niiden taustalla oleva avoimen lähdekoodin yhteisö.
Nämä muodollisemmat oppaat tarjoavat erittäin yksityiskohtaisia erittelyjä kielen ominaisuuksista, usein huolellisesti järjestettyjen sisällysluetteloiden avulla. Voit aloittaa luvuilla, jotka käsittelevät:
- Ympäristön asetuksetAnacondan tai Pythonin ydinosan lataaminen ja asentaminen käyttämällä IDE-ympäristöjä, kuten Jupyter Notebook ja Spyder
- Syntaksin perusteet: lauseet, rivinvaihdot, moniriviset lauseet kenoviivoilla, sisennyssäännöt ja koodilohkot
- Tunnisteet ja avainsanat: pakettien, moduulien, luokkien, funktioiden ja yksityisten muuttujien nimeämiskäytännöt
- Käyttäjän syöttämät tiedot kautta input() toiminto
Sieltä sisältö laajenee yleensä Pythonin perustietotyyppien ja operaattoreiden kierrokseksi. Näet, miten muuttujia luodaan ilman tyyppien määrittelyä, miten Python määrittää tyypit ajon aikana ja miten näitä tyyppejä tarkastellaan... tyyppi()Sitten tutustut numeerisiin tyyppeihin (int, float, long, complex), merkkijonoihin ja merkkijonojen ketjutukseen ja lopulta kokoelmiin, kuten listoihin, tupleihin ja sanakirjoihin.
Operaattoreita ja ohjausvirtaa kohdellaan samalla tavalla metodisesti. Aritmeettiset operaattorit (+, -, *, /, %, **), loogiset operaattorit (ja, tai, ei), vertailuoperaattorit (==, !=, >, <, >=, <=) ja jäsenyysoperaattorit (in, not in) selitetään esimerkkien avulla ja niitä käytetään yhä monimutkaisemmissa ehtolauseissa. Harjoittelet yksinkertaisia if-tarkistuksia, if/else-haaroja, ketjutettuja elif-ehtoja ja sisäkkäisiä if-rakenteita mallintaaksesi vivahteikkaampaa logiikkaa.
Kun perusasiat ovat paikoillaan, nämä oppaat siirtyvät silmukoihin ja iteraatioihin. for-silmukkaa esitetään sekä tapana käydä läpi listoja, tupleja, merkkijonoja ja sanakirjoja että tapana iteroida sekvenssien läpi, jotka on luotu seuraavasti: alue ()Opit while-silmukoista ehto-ohjattua toistoa varten ja näet miten rikkoa ja jatkaa antaa sinun poistua aikaisin tai ohittaa tiettyjä iteraatioita sekä for- että while-rakenteissa.
Pidemmät osiot on omistettu sekvensseille ja niiden operaatioille, erityisesti listoille, tupleille ja sanakirjoille. Löydät perusteellisen katsauksen indeksointiin, viipalointiin, liittämiseen, yhdistämiseen, jäsenyyden tarkistamiseen, pituuksien löytämiseen ja listojen lajitteluun. Tuplet esitellään muuttumattomina sarjoina, ja esimerkeillä havainnollistetaan, mitä tapahtuu, kun yrität muokata niitä. Sanakirjoja käsitellään avainten ja arvojen vastaavuuksina, ja käytännön menetelmiä ovat mm. avaimet(), arvot (), tuotteet (), kopio (), asia selvä() ja vakioidiomeja avainten, arvojen tai avain-arvo-parien iterointiin.
Poikkeukset, tiedostot ja vankat Python-ohjelmat
Keskeinen osa mitä tahansa vakavaa Python-koulutusta on virheiden käsittelyn oppiminen, ja nämä enemmän referensseihin perustuvat kirjat ottavat poikkeusten käsittelyn erittäin vakavasti. Ne kuvaavat, mitä poikkeus on – tapahtuma, joka keskeyttää normaalin ohjelmavirran – ja miten Python luo poikkeuksia objekteina, jotka sisältävät tietoa siitä, mikä meni pieleen.
Sinulle esitellään koko try/except/else-malli ja näytetään, miten tiettyjä poikkeustyyppejä voidaan havaita. Esimerkit osoittavat, että ZeroDivisionError kun jaetaan nollalla, a Nimivirhe kun viitataan määrittelemättömään muuttujaan, ja kuinka kirjoittaa useita except-lohkoja eri ongelmien käsittelemiseksi. Käsitellään myös perusluvun nappaamista Poikkeus tyyppiä yleiseen käsittelyyn, kun et vielä tiedä, mitä poikkeuksia saattaa esiintyä.
Siitä keskustelu siirtyy yleensä luontevasti Python-tiedostojen käsittelyyn. Näet, miten tiedostoja avataan avata() funktio, käyttäen erilaisia tiloja, kuten luku (r), kirjoita (w), liitä (a) ja binäärimuunnelmat, kuten rb or wbTiedosto-objektin ominaisuudet (nimi, tila, suljettu) tutkitaan, sekä menetelmiä, kuten lukea(), kirjoittaa(), kertoa() ja kiinni().
Opit myös käsittelemään tiedostoja käyttöjärjestelmätasolla käyttämällä os moduuli. Yksinkertaiset skriptit näyttävät, miten tiedosto nimetään uudelleen os.rename() tai poista se os.remove()ja miten nykyinen lukukohta tarkistetaan käyttämällä kertoa()Painopiste on aina sen ymmärtämisessä, miten data liikkuu koodisi ja tiedostojärjestelmän välillä turvallisesti ja ennustettavasti.
Yhdessä poikkeukset ja tiedostojen käsittely antavat sinulle työkalut ohjelmien rakentamiseen, jotka eivät ainoastaan toimi ihanteellisesti, vaan myös epäonnistuvat sujuvasti odottamattomien tapahtumien yhteydessä. Voit esimerkiksi yhdistää try/except-käskyn tiedoston avaamiseen, jolloin näet viestin, jos tiedostoa ei ole olemassa, sen sijaan, että antaisit komentosarjan kaatua pinonjäljen vuoksi, jota käyttäjäsi eivät ymmärrä.
Funktiot, lambda-lausekkeet ja funktionaalityyliset työkalut
Kun sinulla on tuntuma syntaksiin ja virtauksen hallintaan, seuraava tärkeä virstanpylväs on uudelleenkäytettävän koodin kirjoittaminen funktioiden avulla. Tämän tilan kirjat käyvät läpi funktioiden määrittelyn def, nimeämällä ne käytäntöjen mukaisesti, välittämällä parametreja ja palauttamalla arvoja palataLuot perusesimerkkejä, kuten funktioita, jotka tulostavat viestejä, laskevat summia tai muuntavat arvoja, ja siirryt sitten monimutkaisempiin funktioihin, joissa on useita parametreja.
Parametrien käyttäytymistä tarkastellaan yksityiskohtaisesti, mukaan lukien oletusargumentit ja se, miten Python välittää argumentteja viittauksen perusteella. Näet, kuinka oletusarvot voivat yksinkertaistaa funktiokutsuja ja kuinka funktion sisällä olevan listan muokkaaminen vaikuttaa alkuperäiseen ulkopuoliseen listaan, koska molemmat ovat viittauksia samaan pohjana olevaan objektiin. Tämä usein yllättää aloittelijoita, joten kirjat tarjoavat selkeitä ennen/jälkeen-esimerkkejä apufunktioiden muokkaamista listoista.
Käsittely ulottuu tyypillisesti anonyymeihin funktioihin käyttäen lambda ilmaisuja. Opit kirjoittamaan pieniä rivifunktioita, kuten lambda a, b, c: a + b + c ja määritä ne muuttujille, ja kutsu niitä sitten aivan kuten nimettyjä funktioita. Tästä eteenpäin tutustut korkeamman asteen funktioihin, jotka hyödyntävät lambda-operaattoria laskutoimitusten esittämiseen kompaktisti.
Kolme toiminnallisen tyylin työkalua on näkyvästi esillä: kartta(), suodattaa() ja vähentää(). Map soveltaa funktiota yhden tai useamman sekvenssin jokaiseen elementtiin ja palauttaa uuden tulossekvenssin. Filter säilyttää vain ne elementit, joille predikaatti palauttaa arvon True. Reduce (from toiminnalliset työkalut) yhdistää toistuvasti jonon elementtejä binäärifunktion avulla ja palauttaa lopulta yhden arvon.
Konkreettiset esimerkit tekevät näistä ajatuksista käsin kosketeltavia. Voit neliöidä jokaisen listan alkion käyttämällä kartta(lambda x: x * x, luvut), suodata pois vain parilliset luvut, joilla on suodatin(lambda a: a % 2 == 0, luvut), tai laske kaikkien listan alkioiden tulo käyttämällä reduce(lambda a, b: a * b, luvut)Nämä mallit heijastelevat käsitteitä, jotka myöhemmin näkyvät datankäsittelyn, analytiikan ja koneoppimisen prosesseissa.
Lopuksi, listaymmärrykset täydentävät tätä toiminnallista työkalupakkia tarjoamalla tiiviin ja luettavaan muotoon perustuvan syntaksin listojen luomiseen ja muuntamiseen. Näet yksinkertaisia muotoja, kuten neliölistan rakentaminen, ymmärtäminen ehdoilla, kuten suodattamaan parillisia ja jopa sisäkkäisiä ymmärryksiä ristitulojen, kuten koko-henkilö-yhdistelmien, luomiseksi.
Olio-ohjelmointi, periytyminen ja polymorfismi
Skripteistä suurempiin, ylläpidettäviin sovelluksiin siirtymiseksi olio-ohjelmoinnista (OOP) tulee olennainen osa tätä menetelmää, ja nämä Python-oppaat tarjoavat kattavan katsauksen OOP-käsitteisiin. Aloitat luokista piirustuksina ja objekteista näiden luokkien instansseina, ja sitten kerrostat päälle attribuutteja, metodeja, rakentajia, ominaisuuksia ja erikoismetodeja.
Perusluokkamääritelmät näyttävät, miten sekä dataa että käyttäytymistä voidaan upottaa. Esimerkiksi Henkilö luokalla voi olla ominaisuuksia, kuten nimi, ikä ja sukupuoli, sekä metodeja, kuten seiso() or istua()Näet, miten luodaan objekteja (henkilö1 = Henkilö()), käytä attribuutteja pistemerkinnällä ja määrittele __init__ konstruktori alkutilan määrittämiseksi aina, kun uusi instanssi luodaan.
Luokka-attribuuttien ja instanssi-attribuuttien välistä eroa käsitellään perusteellisesti. Luokan ominaisuudet, jotka on määritelty suoraan luokan rungossa, ovat yhteisiä kaikille instanssien kesken, kuten henkilömäärä joka seuraa luotujen objektien määrää. Instanssiattribuutit, jotka tyypillisesti määritetään __init__ tai muilla menetelmillä itse, kuuluvat yksittäisille objekteille ja voivat vaihdella kunkin objektin osalta.
Kapselointi ja hallittu käyttöoikeus tulevat seuraavaksi ominaisuuksien ja käyttöoikeusmääreiden kautta. Opit käyttämään @omaisuus ja vastaavat asettajan koristelut arvojen validoimiseksi tai muuntamiseksi, kun ne määritetään. Klassinen esimerkki on vanhenemiskuukausi-kenttä, joka rajoittuu automaattisesti välille 1 ja 12 riippumatta siitä, minkä arvon ulkoinen koodi yrittää asettaa. Tämä estää virheellisten tilojen pääsyn objekteihisi.
Käyttöoikeusmääritteet selitetään nimeämiskäytäntöjä käyttäen: julkiset määritteet selkeillä nimillä, suojatut määritteet yhdellä alaviivalla ja yksityiset määritteet kahdella alaviivalla. Vaikka Python ei valvo pääsynhallintaa samalla tavalla kuin jotkut kielet, nämä mallit viestivät tarkoitusperästä ja vaikuttavat yksityisten attribuuttien nimien muokkauskäyttäytymiseen.
Perintä otetaan käyttöön tapana jakaa yhteistä toiminnallisuutta toisiinsa liittyvien luokkien välillä. Saatat nähdä kenraalin ajoneuvo perusluokka, jolla on yhteisiä ominaisuuksia, kuten nimi ja väriTämä Pyörä alaluokka, joka perii nuo ominaisuudet ja lisää samalla omat hinta kenttä. Esimerkit näyttävät, miten pääkonstruktoria kutsutaan lapsikentästä (Ajoneuvo.__init__(itse, nimi, väri)) ja laajenna sitten lapsikohtaisella alustuksella.
Aineisto ei rajoitu yksinkertaiseen yksittäiseen perintöön. Useita lapsiluokkia periytyy samalta vanhemmalta, ja jopa moniperiytymistä, jossa yksi luokka perii useammalta kuin yhdeltä vanhemmalta, kuten Auto luokka perii molemmat ajoneuvo ja KoskaVaikka moninkertainen periytyminen voi olla hankalaa reaalimaailman suunnittelussa, sen näkeminen toiminnassa selventää, miten Python ratkaisee metodihaut yläluokkien välillä.
Polymorfismi on sitten sidottu kahteen päämalliin: metodien ohittamiseen ja operaattorin ylikuormitukseen erityismetodien avulla. Metodin ohittaminen tapahtuu, kun aliluokka tarjoaa oman toteutuksensa pääluokassa määritellylle metodille, kuten Johtaja luokan uudelleenmäärittely tulostustiedot() alkaen TyöntekijäKäyttäjän ylikuormitusta osoitetaan erityisillä menetelmillä, kuten __lisätä__, __gt__ ja __str__, jolloin luokkainstanssit voivat osallistua lausekkeisiin, kuten henkilö1 + henkilö2 tai tuottaakseen luettavia merkkijonoesityksiä tulostettaessa.
Tämä OOP-perusta antaa sinulle valmiudet suunnitella monimutkaisempia järjestelmiä, joissa toisiinsa liittyvät objektit jakavat koodia, noudattavat rajoituksia ja tarjoavat selkeän rajapinnan muulle sovelluksellesi. Yhdessä ”Python Illustratedin” lempeämmän, tarinapohjaisen johdantotyylin kanssa se varmistaa, että hahmojen väistymisen jälkeenkin tiedät, miten omia ohjelmiasi suunnitellaan vankalla tavalla.
Yhdessä narratiivinen ”Python Illustrated” ja tietosanakirjamaisemmat PDF-tyyliset oppaat muodostavat tehokkaan oppimispolun: aloitat leikkisällä tarinankerronnalla ja visuaalisella intuitiolla, ja sitten kasvat Pythonin syntaksin, vakiomallien ja parhaiden käytäntöjen täyteen laajuuteen muuttujista ja silmukoista aina poikkeuksiin, tiedostojen I/O:han, funktionaalisiin apuohjelmiin, objekteihin, periytymiseen ja polymorfismiin asti. Jos lähestyt heitä kärsivällisesti – samalla kärsivällisyydellä, josta Zia muistuttaa Wiesjeä jatkuvasti – et ainoastaan pysty seuraamaan tutoriaaleja, vaan olet myös valmiimpi lukemaan, ymmärtämään ja lopulta kirjoittamaan omaa Python-koodia.