Ha nem vagy programozó, a Python lehet a kiindulópontod, mivel a 2021-es lista top programozási nyelvei között az első helyen áll, és a legkönnyebben tanulható. Ha bármilyen más programozási nyelvet ismersz, a Python megtanulása gyerekjáték lesz számodra. A szintaxisbeli különbségektől eltekintve az OOP alapfogalmai ugyanazok maradnak. Emellett a Python kiterjedt könyvtárakkal rendelkezik, amelyek szinte mindent támogatnak, amit csak akarsz.
A Python
- olvasható és könnyen érthető támogatási modulok és ösztönzi a kód újrafelhasználását.
- Keresztplatformos nyelv – egyszer kódol, bárhol futtatható (Windows, Linux, Unix, Mac, stb…)
- Interpretált nyelv – az értelmező a kód egyes sorait egyenként hajtja végre, ami megkönnyíti a hibakeresést.
- A nyílt forráskódú, így bármikor könnyen gyakorolhatsz, amikor csak akarsz
Ezeken kívül a Python kiváló szabványos könyvtárakkal rendelkezik
- amelyek lehetővé teszik az integrációt más nyelvekkel, mint a Java, C, C++.
- támogatja az objektumorientált programozást
Ezeket szem előtt tartva nézzük át azokat a témákat, amelyeket meg kell tanulnod a Python elsajátításához, kezdve az alapoktól a haladó témákig. A cikk végére elég Pythont fogsz tudni ahhoz, hogy elkezdj kódolni, válaszolj az interjúkérdésekre, és kiváló állást szerezz magadnak.
A Pythont a hivatalos oldaláról telepítheti.
A Python tanulásának legjobb módja
A Python tanulásának legjobb módja az, ha megvalósítja, amit olvas. Csak nyisd ki a laptopodat, telepítsd a Pythont, és kezdj el kódolni. Menet közben is tanulhatsz!
De mielőtt ezt megtennéd, íme néhány tipp, hogy megkönnyítsük a dolgodat –
- Ha nem vagy programozó, legyen egy kis extra türelmed. Biztosan sikerülni fog. A Python a legegyszerűbb módja a programozásba való belépésnek.
- Gondolj egy kis alkalmazásra, és a tanulásodat annak köré építsd. Lehetőleg építs egy egyszerű weboldalt Django segítségével. Például a telefonok listájának böngészése és megvásárlása, a heti élelmiszerbevásárlás online, az alkalmazottak adatainak kezelése és így tovább. Ha csak olvasol, és nem próbálod ki, amit olvasol, nem fogod tudni felfogni vagy megjegyezni a fogalmakat.
- Ha hibát kap, az azt jelenti, hogy jó irányba halad. Ha sok hibát követsz el, az nagyszerű. Minden hiba izgatottá és lelkessé kell, hogy tegyen, hogy megtaláld a megoldást. A legjobb tanulás a hibákon és kivételeken keresztül történik.
- Vegyen részt egy neves online tanfolyamon, hogy elinduljon a Python útjára. A From Zero to Hero in Python az egyik legjobb tanfolyam az interneten, hogy elkezdje a Python tanulását.
- Tanulja meg a szintaxist útközben. Ne töltsön túl sok időt csak a szintaxis megtanulásával. Állítson be egy projektet egy olyan IDE-vel, mint a PyCharm, és kezdjen el kódolni. Meg fogod ismerni a szintaxist, ahogy egyre több kódot írsz.
- Kezdj egy egyszerű projekttel, és bővítsd a funkcionalitást, ahogy kódolsz. Vegyél fel összetettebb koncepciókat, ahogy tudsz kódot fejleszteni.
Oké, további elméletek nélkül kezdjük el.
Az első néhány altémát érdemes kihagynia, ha már ismer egy vagy két másik nyelvet. Ezek üdvözölni fognak a programozás világában azzal, hogy megismertetnek a legtöbb nyelvben használt általános szakkifejezésekkel.
Változók és adattípusok
Tegyük fel, hogy egy telefont szeretne vásárolni. Átböngészi a sok telefont, és hozzáad egyet a kosarához. Honnan tudja a számítógép, hogy hol tárolja az adatait, például a telefon modelljét, az Ön által választott csomagot és a hozzáadott tartozékokat, például fülhallgatót?
Az adatokat változók formájában tárolja. Ez segít az alkalmazásnak az adatok megőrzésében és továbbításában az alkalmazás elejétől az alkalmazás végéig (például a megrendelés leadása oldal), ahol a megrendelése véget ér.
Az adatoknak különböző típusai vannak. Például a telefonszáma egy egész szám lesz; a szolgáltatási terv lehet egy String, a kuponok meglétét meghatározó változó lehet egy Boolean, és így tovább. Egész szám, Boolean, String (és néhány más) az úgynevezett adattípusok.
Lássunk egy egyszerű példát –
handset_id = 90993plan = "MYPLAN199"print(handset_id, plan)
Ezeket a változókat handset_id és plan az egész alkalmazásban használhatjuk ahelyett, hogy keményen kódolt értékeket használnánk.
Műveletek
Minden, amit az adatokon végzünk, folyamatnak nevezzük. Összeadás, kivonás, összehasonlítás vagy logikai műveletek. Például egy felhasználó új és meglévő mobiltelefon-csomagjának összehasonlításához valami olyasmit írhatunk, mint –
print(new_plan == old_plan)
A kettős egyenlőség egy összehasonlító operátor, amely kimenetként igaz vagy hamis értéket ad vissza. A Pythonban számos operátor létezik.
Feltételek
Tegyük fel, hogy a díjcsomagra bizonyos betegségek, például a havi használat, a telefonkészülék kiválasztása és számos más tényező alapján kedvezményt alkalmazunk. Hogyan ellenőrzi az alkalmazás automatikusan, hogy jogosult vagy-e kedvezményre? Úgy, hogy ellenőrzi, hogy teljesülnek-e ezek a feltételek!
if(plan == 'DISCOUNT30' and customer_existing):print('You are eligible for discount')else if(some_condition):#some block of codeelse#some other block of code
A Pythonban sok más feltétel is létezik, például a while és for ciklusok. Olvassa el ezt a kiváló blogot, hogy megismerje a Python feltételes utasításait.
Funkciók
Néha vannak bizonyos funkciók, amelyeket újra szeretnénk használni, vagy egy kódrészlet olyan nagy lehet, hogy jó ötlet lehet egy külön blokkba áthelyezni és meghívni, amikor csak szükséges. Az ilyen blokkokat függvényeknek nevezzük. Például a fenti kódunkat áthelyezhetjük egy segédfájlba, és bárki használhatja a függvényt.
def check_for_discount(customer_existing):#function code
def definiálja a függvényt. Amikor meghívjuk a függvényt, átadjuk a customer_existing értékét (ebben az esetben). Ezt nevezzük paraméternek. Egy függvénynek bármilyen paramétert átadhatunk.
Objektumorientált programozás
A legtöbb mai vezető programozási nyelv az OOPS-on (objektumorientált programozási koncepció) alapul, így a Python is. Ez egy egyszerű és erőteljes koncepció. Az OOP-ban mindent objektumnak tekintünk. Az osztály egy olyan entitás, amelyből szükség szerint objektumokat hozunk létre.
Nézze meg ezt a klassz videót, hogy megismerje az OOPS fogalmait.
A kézibeszélő példánkban a kézibeszélő lehet egy osztály, és a kézibeszélő minden részlete, mint a modell, a gyártmány, a típus, a jellemzők lehetnek az attribútumai. Amikor a felhasználó kiválaszt egy kézibeszélőt, a kézibeszélő osztály egy objektuma jön létre, és a részletek az attribútumaiba (tagváltozókba) kerülnek.
Az embert is tekinthetjük egy osztálynak – Human. Az attribútumai lehetnek a neve, kora, neme stb. Megtalálhatjuk magunkat az Ember osztály objektumaként meghatározott értékekkel, mint például név = ‘Mac’, életkor = ’22’, nem = ‘M.’
Minden osztálynak vannak attribútumai és metódusai ezen attribútumok lekérdezésére és beállítására. Egy osztálynak van egy konstruktora vagy init metódusa is, amely létrehozza az osztály objektumát, amikor csak szükséges.
class Human:def ___init__(self, name, age, gender):self.name = nameself.age = ageself.gender = gender
Próbáljuk meg ezt az analógiát a kézibeszélő osztályunkra alkalmazni.
class Handset:def ___init__(self, handset_id, model, manufacture_date, features):self. handset_id = handset_idself. model = modelself. manufacture_date = manufacture_dateself.features = featuresdef printhandsetdetails():print(self.handset_id, self.model)
Tegyük fel, hogy egy felhasználó hozzáad egy adott kézibeszélőt a kosarához. A részleteket tárolhatjuk –
handsetDetails = Handset("NOKN96", "2009", "23-05-2009", "slim")
Tegyük fel, hogy ki akarjuk nyomtatni ezeket a részleteket, hozzáadhatunk egy metódust az osztályon belül ehhez, és hívhatjuk a handsetDetails.printhandsetdetails()
Adatszerkezetek
Az adatszerkezet kifejezés minden programozási nyelvben közös. A Pythonban gyűjteménynek nevezzük őket. A Pythonban különböző típusú csoportok léteznek, amelyekkel az adatok tárolása és visszakeresése, gyerekjáték. Ezek a programot is gyorsabbá és hatékonyabbá teszik. A négy fő gyűjteménytípus a következő: –
- List – az adatstruktúrák közül a legegyszerűbb, a lista egy rendezett gyűjtemény, amely egyben változtatható is. Például,
featurelist =
A lista elemeinek eléréséhez az index segítségével hivatkozunk rájuk, és az index mindig 0-val kezdődik. featurelist adja a frontcamera.
- Tuple – szintén rendezett, de nem változtatható. Egy tuple-ban nem lehet elemeket hozzáadni vagy eltávolítani.
- Set – rendezetlen és indexeletlen gyűjtemény. A set elemeihez nem lehet index segítségével hozzáférni, viszont végighaladhatunk az elemeken vagy átvizsgálhatjuk őket, hogy ellenőrizzük, van-e bennük elem.
- Dictionaries – más néven maps, ezekhez kulcs-érték párokkal lehet hozzáférni. Rendezetlenek. Például,
handsetdetails = { "name": "Nokia6.1", "color": "Black", "RAM": "6GB"}
Az érték megszerzéséhez a kulcs handsetdetails segítségével kell hozzáférnünk.
Ez az ingyenes udacity kurzus alkalmas arra, hogy részletes ismereteket szerezzen a Python adatszerkezeteiről és algoritmusairól. Ha ezt elvégzi, a későbbiekben bármilyen programozási nyelvben képes lesz az adatszerkezetek használatára.
Az adatszerkezetek megtanulása segít abban, hogy Pythonban játszhasson az adatokkal, és könnyedén építhessen nagyméretű alkalmazást. Segíteni fog továbbá a hatékony írás, a hatékony kód és a dinamikus programozás elsajátításában.
Felhasználói bemenetek
A felhasználó bemenetének fogadása meglehetősen egyszerű. Elég az input() metódus használata, és máris megkapjuk a bemenetet a konzolról.
name = input('Enter handset name - ')
A kapott név alapján lekérdezhetjük a kézibeszélő adatait, és megjeleníthetjük a felhasználónak. Az adatokat fájlból vagy adatbázisból hozhatjuk a kapcsolat segítségével.
Adatbázishoz való csatlakozás
Az adatbázishoz való csatlakozáshoz telepíteni kell a MySQL csatlakozót Python (MySQL-hez) vagy MongoDB illesztőprogramot, például PyMongo. Ha kezdő vagy, válaszd a MySQL-t, mivel ez a legelterjedtebb és leghasznosabb megtanulni.
Ez az egyszerű bemutató végigvezet az adatbázishoz való csatlakozás és a szükséges adatok lekérdezésének lépésein.
Fájlkezelés
A fájlkezelés minden alkalmazás alapvető része. Az alkalmazásod esetleg olvasni akar egy fájlból, írni egy fájlba, és így tovább. Pythonban könnyedén megvalósítható a fájlkezelés. A Pythonban kétféle adattípus létezik – bináris, szöveges. A fájlműveleteknek négy típusa van, amelyeket CRUD-nak nevezünk – Create, Read, Update, Delete. Például megnyithatunk egy fájlt így: –
file = open("handsetlist.txt", "w");
#ez megnyitja a fájlt ‘w,’ azaz írási módban
Ha megadjuk az ‘r’-t, akkor a fájl olvasási módban nyílik meg, új sor hozzáadásához pedig az ‘a’-t (append) használjuk. Az ‘r+’ mód egy speciális mód, amely az olvasási és írási műveleteket is kezeli, miközben egy fájlal dolgozunk.
A fájl olvasásához a file. read () metódust használjuk, az íráshoz pedig, igen, jól tippeltél! A file.write(“data to write”) metódust használjuk.
Több fájlkezelő funkcióról olvashatsz és játszhatsz vele ezen a ropogós és egyszerű linken.
Szóval most már készíthetsz egyedi programokat, önálló alkalmazást, amely tökéletes eredményeket ad. De mi a helyzet egy olyan forgatókönyvvel, ahol az alkalmazásodat egyszerre többen is elérhetik. Például egy nyomtató, amelyhez több felhasználó is hozzáférhet, hogyan kezeli a nyomtató a több munkát holtpont nélkül?
Párhuzamosság és többszálúság
Létezhetnek olyan helyzetek, mint a fenti. Két vagy több folyamat vár ugyanarra az erőforrásra. Tegyük fel, hogy egy folyamat A megpróbál hozzáférni egy erőforráshoz R. Most; a folyamat B szintén megpróbál hozzáférni az erőforráshoz R. Annak elkerülése érdekében, hogy B felülbírálja A adatait, a folyamatok szinkronizálva lesznek, ahol minden folyamat (B, C, D, stb…) blokkolva van, amíg az előző szál/folyamat A be nem fejezi az erőforrás használatát R. Ezt kölcsönös kizárásnak nevezzük.
Ez azt jelenti, hogy az A folyamat az erőforrást addig zárolja, amíg az erőforrást használja, és felszabadítja, amikor befejezte. A többi folyamatnak meg kell várnia, hogy sorra kerüljön a zárolás. De mi van akkor, ha az A folyamat problémába ütközik, és nem tudja befejezni a munkáját? Mi van, ha az A folyamatnak szüksége van valamire a B folyamatból, hogy befejezze, és B arra vár, hogy A befejezze. Ezt hívják holtpontnak! A holtpont halálos, és ezt nem szeretnénk a programunkban.
A munkakörnyezetben elengedhetetlen, hogy ismerjük a többszálúságot, a többprocesszoros feldolgozást és a zárakat.
Az API-szolgáltatások létrehozása
Most nézzünk egy nagyobb képet – a web világát, ahol a programok és alkalmazások kölcsönhatásba lépnek egymással, megosztják az erőforrásokat, és ami a legfontosabb, a HTTP protokoll segítségével kéréseket továbbítanak egymásnak. Minden olyan alkalmazást, amely képes kommunikálni egy másikkal, mikroszolgáltatásnak nevezünk. Ez azt jelenti, hogy ha azt akarod, hogy az alkalmazásod interakcióba lépjen a világgal, tudnod kell, hogyan tedd közzé a szolgáltatásaidat – API létrehozásával! Az API-szolgáltatásokat gyorsan létrehozhatod a Python könyvtár – Flask – segítségével. Nézze meg ezt a videósorozatot a know-how-ért.
Webalkalmazás létrehozása
Most létrehozhatja webalkalmazását Python segítségével. Ez az ingyenes oktatóanyag lépésről lépésre jól bemutatja, hogyan készíthet egy projektet a Django és a Python segítségével. Iratkozz be erre a tanfolyamra és ismerd meg a Django-t. A Django egy full-stack webes keretrendszer, amellyel végponttól végpontig terjedő webes alkalmazást hozhat létre Python nyelven. MVC (Model-View-Controller) architektúrát és ORM-et (Object-Relational-Mapping) használ az adatok eléréséhez. A Pythonban vannak olyan könyvtárak, amelyek teljes mértékben támogatják az ORM-et és a webalkalmazás biztonságának kiépítését.
Végszó
Ez minden, ami ahhoz kell, hogy Python profi legyél. Az elsődleges változóból indultunk ki, és végül egy teljes értékű webalkalmazást hoztunk létre. Ha úgy érzed, hogy készen állsz az interjúkra való megjelenésre, akkor olvasd el Python interjúkérdéseinket. Továbbá, Ez az átfogó blog kiváló ötletet ad arról, hogy milyen könyvekre van szüksége kezdőként vagy haladó Python programozóként.
És ami a legfontosabb, nézd meg ezeket a legjobb Python oktatóprogramokat, és menj előre, jelentkezz be néhányra. Vannak ingyenes és fizetős oktatóprogramok is, így kiválaszthatod, hogy melyiket szeretnéd regisztrálni.
Az emberek is olvasnak:
- A legjobb Python tanfolyamok
- A legjobb Python tanúsítványok
- Top Python projektek
- A legjobb Python IDE
- A legjobb Python IDE
- Best Python Frameworks
- A legjobb Python fordítóprogramok
- A legjobb Python értelmezők
- Python programozási nyelvek
- How to Run a Python Script?
- NumPy mátrix szorzás