Hogyan lehet megtanulni a Pythont az egyszerű módon (és nem úgy, ahogy én tettem)

A Python állítólag az egyik legkönnyebben megtanulható programozási nyelv. Tudva, hogy elég rosszul éreztem magam, amikor először megpróbáltam, és nem sikerült megtanulnom. Még rosszabb volt, amikor másodszor kudarcot vallottam.

De kiderült - és ezt a harmadik próbálkozáson megtanultam -, hogy a Python valóban elérhető lehet, még egy olyan bölcsészkedvelő nem kódoló számára is, mint én. Csak a megfelelő módon kell megközelítenie.

Hogy nem sikerült megtanulnom a Pythont ... először

Csaknem egy évtizeddel ezelőtt próbáltam először megtanulni a Pythont. Nem igazán voltam biztos benne, mit akarok kezdeni vele - esetleg automatizálhatom a munkámat, esetleg írhatok egy kis alkalmazást. Csak olyan készségnek tűnt, amelyet jó lenne tudni.

Szóval elővettem egy példányt az akkor ingyenes Learn Python the Hard Way PDF-ből, és elkezdtem átdolgozni.

Az első fal, aminek eltaláltam, a Python felállítása volt a saját rendszeremen. Különösen abban az időben a gyakorlati programozók számára írták a legtöbb utasítást, hogyan kell ezt megtenni, és örök időbe telt, mire végigcsináltam az egészet.

Meg akartam tanulni, hogyan kell írni a Python kódot, és az első lépésem az volt, hogy öt órát töltöttem a parancssorral való harcban? Demotiváltak, még mielőtt elkezdtem volna.

Miután végre beállítottam a dolgokat, kódot írhattam a könyvvel együtt. És egy ideig lassítottam egy nagyon egyszerű szöveges kalandjáték összeállítását.

De amikor eltaláltam az első igazi kihívást - azokat a pillanatokat, amelyek mindig a kódolással járnak, ahol valami nem működik, és egyszerűen nem tudod kitalálni, miért - abbahagytam.

Sokkal fontosabb tennivalóim voltak, mint hogy kifürkészhetetlen hibaüzenetekkel a fejemet a billentyűzeten és a fejtörőn ütem. Különösen akkor, amikor a végcélom egy olyan szöveges kalandjáték készítése volt, amely nem érdekelt, és amelyet soha senki nem fog játszani.

Hogy nem sikerült megtanulnom a Python-t ... másodszor

Néhány évvel később újra megpróbáltam. Addigra újságíróként dolgoztam, és érdekelt az adatújságírás, különösen a webes kaparás.

Tudtam, hogy szükség lesz Python kódolási képességekre, ezért találtam egy online oktatási platformot - nem mondom meg, melyik -, és elindítottam egy kezdő Python tanfolyamot.

A legtöbb MOOC-hoz hasonlóan ez a tanfolyam videó alapú volt. Megnézek egy előadást egy Python-nal kapcsolatos témáról, válaszolok egy kvízre a kurzus helyén, hogy megerősítsem, hogy megtanultam az anyagot, majd továbbléptem a következő modulra.

A tapasztalt programozók valószínűleg már sejteni tudják, mi történt ezután: Amikor megpróbáltam megírni magamnak a Python kódot, nem tudtam mit kezdeni.

Nézve, ahogy valaki más kódol videókat, és meghallgatva magyarázatukat, arra gondoltam, hogy megtanulom, hogyan kell ezt magamnak megtenni. És a feleletválasztós és az üresen kitöltött vetélkedők, amelyeken 100% -ot kaptam, megerősíteni látszott, hogy megértettem az anyagot.

De természetesen, amikor eljött az idő, hogy egyedül alkalmazzam, nem tudtam. Vissza tudtam szkennelni a videókat, és lemásolni, amit az előadó tett, de nagyon nehezen alkalmaztam bármit, amit megtanultam a saját projektjeimbe.

Nehéz volt motiváltságot is fenntartani, mert olyan dolgokon dolgoztam, amelyek nem tűntek relevánsnak.

Meg akartam tanulni a webes kaparást. De ehelyett az objektum-orientált programozás (OOP) koncepciójáról szóló videoelőadások megértésével küzdtem. Mi köze ezeknek a céljaimhoz? Nem voltam biztos benne, és ez megkönnyítette a leszokást. Újra.

Miért buktam el

Utólag nem túl nehéz kitalálni, miért buktam el. Első alkalommal a nagy hibáim a következők voltak:

  1. Nincs egyértelmű célja . Miért tanultam Python-t? Nem igazán tudtam. Ez nagyon könnyű leszokni a kilépésről, ha nehéz lesz a helyzet - ami előbb-utóbb mindig megtörténik.
  2. Túl nagy kihívás előre . Előbb vagy utóbb meg kell találnom, hogyan lehet a Pythont bekapcsolni a rendszerembe, de ezt nulla releváns tapasztalattal fel kell állítanom , mielőtt annyit írtam volna, hogy print(‘Hello world!’)a frusztráció és a kudarc receptje volt.

Amikor valami kihívást megtanulsz, főleg teljesen kezdőként, korai nyereményekre van szükséged, hogy el tudd hinni, valóban meg tudod csinálni.

Egy frusztráló kihívással kezdve, amely még kódolással sem járt, biztos volt abban, hogy nem kaptam meg ezeket a korai motiváló és megerősítő győzelmeket.

Másodszor elkerültem ezeket a hibákat, de ehelyett újakat követtem el:

  1. Nem azzal tanultam. Videók nézése és a vetélkedők átadása úgy érezte, hogy tudok kódolni, de valójában nem kódoltam. Mikor tettem próbát (és nem), hogy írjon kódot, akkor még inkább bosszantó, mert azt hittem, már megértette. És mivel egy csomó kattintást kellett elvégeznem az egyes videókban, hogy újra megnézhessem a különböző szakaszokat és újra megtanuljam a dolgokat.
  2. Tiszta célom volt, de nem volt világos utam felé. Tudtam, hogy adatújságírást és webes kaparást szeretnék végezni, de egy általános kezdő Python tanfolyamot folytattam. Ez azt jelentette, hogy olyan tanulságokat tanultam, amelyek kritikusak lehettek a szoftverfejlesztés szempontjából, de nem voltak annyira relevánsak az adatújságírás szempontjából. Gyakran nehezen tudtam összekapcsolni az osztályban tanult alapokat azzal, amit valójában a kóddal akartam csinálni.

Végig egy másik nagy mentális hibát is elkövettem. Arra gondoltam, hogy nagyon Python-ot tanulok fekete-fehér kifejezéssel. Vagy „megtanultam a Pythont” - az egész Pythont -, vagy nem.

Ez valóban megfélemlítette a tanulás lehetőségét. Valahányszor elütök egy kihívást, még rosszabbá tette, hogy valami mitikus Python „célvonalra” gondoltam, amely még mindig nagyon- nagyon messze volt.

Ez természetesen téves. A beszélt nyelvhez hasonlóan a Python (és más programozási nyelvek) sem az, amit valaha is befejeztek . És mint egy beszélt nyelvnek, a dolgok elvégzéséhez valójában nem kell folyékonyan beszélnie a Python nyelven.

Amint azt minden elsőéves cserediák elmondja, csak azt kérdezheti, hogy „Mennyibe kerül ez?” és "Hol van a fürdőszoba?" a helyi nyelven valóban befolyásolhatja életminőségét.

Ugyanez igaz a Pythonra is. Nem kell mindent tudnia , sőt szükségszerűen ennyit sem, hogy valódi változást hozhasson a saját életében.

De ez egy olyan lecke, amelyet csak véletlenül tanultam.

Hogyan tanultam meg valójában (néhányat) a Pythonból

2018-ra felhagytam a Python tanulásával. Kétszer próbálkoztam, és kétszer kudarcot vallottam! De aztán felvettek a Dataquest céghez, amely online adattudományi ismereteket tanít - ideértve a Python programozást is.

Új munkámhoz nem volt szükség kódolási készségre, de úgy gondoltam, hogy még mindig meg kell próbálnom a tanulási platformot. Meg kellett értenem a termékünket, és azt, amit a tanulóink ​​éreztek. Talán, gondoltam, még annyit is megtanulhatok, hogy web-kaparást végezzek, ahogy korábban terveztem.

Tehát némi rémülettel létrehoztam egy fiókot, és elindítottam a Python for Data Science tanfolyamot.

Meglepetésemre szórakoztató és könnyű érzés volt. Nagyobb meglepetésemre pedig egyáltalán nem kellett sok idő, mire úgy éreztem, hogy egyedül is fel tudok építeni néhány projektet.

Írtam egy kis szkriptet az e-mailek rendezéséhez. A Python segítségével gyorsan elemeztem néhány felmérési adatot. Megfelelően és kezdetekkor megépítettem azt a nagy webes lekaparási és elemzési projektet, amelyről még újságíró koromban álmodtam.

Én - és még mindig vagyok - valójában Python, hogy megkönnyítse a munkámat, és javítja az életem. Pár évvel később még kezdő kódoló vagyok, de össze tudok csapni kis szkripteket, hogy megkönnyítsem a dolgokat, és megoldhassam a munkahelyemen fellépő adatelemzési problémákat a Python segítségével.

Ez azért történt, mert inkább véletlenül, mint tervezésemre bukkantam a Python tanulásának olyan módjára, amely szinte az összes hibát elkerülte, amit korábbi erőfeszítéseimmel követtem el:

  • Világos céllal jöttem be - tanuljon meg annyi Pythont, hogy képes legyen egy kis adatmunkára, hogy jobban megértsem ügyfeleinket.
  • Kerültem a Python teljes telepítésének kezdeti kihívását, mert a Dataquest lehetővé teszi a kód megtanulását és írását közvetlenül a böngészőablakban.
  • Kódolást tanultam a kódolással, nem pedig más kódolásával.
  • Olyan úton tanultam, amelyet kifejezetten a Python adatmunkájához terveztek, így minden, amit tanultam, és minden gyakorlat, amit elvégeztem, relevánsnak érezte magát.
  • Csak azt próbáltam megtanulni, amire szükségem volt, nem pedig az egész Pythont.

Hogyan lehet megkönnyíteni a Python tanulását

Visszatekintve a hibáimra, majd a véletlenszerű sikereimre, azt hiszem, ez néhány egyszerű elvitelre vezethető vissza:

Először menj be céllal. Miért akarod megtanulni a Pythont? Konkrétan mit akar építeni vele? Ha nincs jó válasz erre a kérdésre, akkor nagyon nehéz motivált maradnia.

Másodszor, találjon meg egy módot a tanulásra azáltal, hogy megteszi azt a dolgot, amelyet valóban meg akar tenni. Ha talál egy célzott tananyagot, például egy olyan platformot, amely kifejezetten a játékfejlesztők számára tanítja a Pythont, az nagyszerű. De az általános tanulási források túlságosan működhetnek mindaddig, amíg tanulás közben néhány kezdő Python-projektnél alkalmazza a tanultakat.

A tanulás kódot kell tartalmaznia ténylegesen írásban kódot, és azt, hogy ténylegesen kódot írni, hogy csinál valamit akkor érdekli.

Harmadszor, kerülje azt az előzetes kihívást, hogy a Python és a különféle könyvtárak a helyi rendszerre kerüljenek.

Rengeteg olyan online platform létezik, amely lehetővé teszi a kód írását és futtatását egy webböngészőben, vagy írhat és futtathat kódot egy notebookba a Google Colab-on vagy hasonló platformon. Csak próbáld meg minél könnyebben kezdeni az indulást. Később aggódhat a helyi beállítások miatt.

Negyedszer, ne próbáljon „megtanulni Python-t”. Ez egy hosszú távú cél, amely vitathatatlanul elérhetetlen - még a legjobb Python-fejlesztők sem tudnak róla szó szerint mindent.

Ehelyett próbálja megtanulni, hogyan kell használni a Python-ot a célprojekt egyszerű verziójának vagy a projekt egyik részének elkészítéséhez. Ezután tanulja meg, hogyan használhatja a Python-ot a projekt nagyobbá tételéhez, vagy hogyan léphet a következő lépésre.

Bontja a nagy feladatokat kisebb darabokra, és összpontosítsa céljait valaminek a felépítésére, hogy megkapja azt a pszichológiai jutalmat, hogy valamit elvégzett, amikor befejezte.

Kövesse ezeket az irányelveket, függetlenül attól, hogy milyen okból tanulja a Python-ot, és nem vagyok kétséges, hogy képes leszel elérni a céljaidat anélkül , hogy kudarcot kellene vallanod, és kétszer is abba kellene hagynod!