Python kezdőknek: Kezdje el

Közzététel: Támogatása segít fenntartani a webhely működését! Az ezen az oldalon javasolt szolgáltatások némelyikén referenciadíjat keresünk.


A Python magas szintű, általános célú, értelmezett szkriptnyelv. A nyelv’A dizájn nagy hangsúlyt fektet a kód olvashatóságára, valamint a rugalmasságra és a könnyű használatra.

A legtöbb hasonló nyelvhez hasonlóan (például a Ruby és a Perl), a Python bármihez használható, bármilyen alkalmazáshoz. Van egy maroknyi Python segítségével épített webalkalmazás és néhány kiváló webes fejlesztési keret. Az olyan eszközökkel, mint a Py2Exe, a Python szkripteket önálló asztali alkalmazásokba csomagolhatja.

De ahol a Python valóban ragyog, és ahol a legtöbbet kihasználja, az adat elemzés, a számszerzés, a tudományos kutatás, a hackelés, a szkriptálás és a feladat automatizálása eszközévé válik. A Pythonot tudósok, matematikusok, penetrációs tesztelők, kémek, kriptográfusok, zenészek, tőzsdei közvetítők és hálózati rendszergazdák használják széles körű alkalmazásokhoz..

Ha meg szeretné tanulni, hogyan kell szép webes alkalmazásokat készíteni, akkor valószínűleg a Ruby-val vagy (ha Ön’újra a WordPress-be), PHP. De ha meg akarja tanulni, hogyan kell számítógépeket használni érdekes új dolgok készítéséhez, akkor a Python a nyelv az Ön számára.

Contents

Online Python források

Nagyon sok Python anyag található az interneten – részük ingyenes, részének fizetős. Ezek a legjobb források a Python megtanulásához.

Tanulás Python

Ajánlott tanfolyamok és oktatóanyagok
  • A Python hivatalos oldala
  • Kezdő’s Útmutató a Pythonhoz – A tanulás megkezdésének hivatalos helye.
    • Nem programozók számára
    • A Python új programozói számára
  • Ismerje meg a Python Hard Way-et – Kiváló Python tanfolyam azok számára, akik igazán szeretnék megtanulni a nyelvet hivatkozások nélkül.
  • Google’s Python osztály – A Google számos projektet használ a Python-nak. Szeretné megtanulni, ahogy tanítják? tudsz.
  • Útmutató a standard könyvtárhoz
  • Python Koans – Csodálatos, filozófiai megközelítés a Python programozásához és fejlesztői gondolkodásmódhoz a tesztvezérelt fejlesztés segítségével.
Egyéb nagy Python oktatóanyagok és tanulási források

Íme néhány nagyon jó forrás a Python megtanulásához, amelyek majdnem beépítették a fentiekbe “Ajánlott” lista. Mindenkinek más a tanulási stílusa, tehát ezek közül az egyik jobban megfelel Önnek, mint a fenti oktatóprogramok.

  • Python videók – Hatalmas videók listája mindenféle Python témáról
  • Python programozás kezdőknek – csupasz csontos oktatóprogram a Linux Journalból.
  • Python Book – Mélyreható online könyv, amely a kezdő Pythonról, a fejlett témákról és az mny gyakorlatokról szól.
  • Python pálya – ingyenes és átfogó oktatóanyagok a Python számára.
  • Készségek fejlesztése a Pythonban – a Python gyakorlatok 42 fejezete
  • Pacsirta’s Nyelvi útmutató a Pythonhoz – Egyszerű, projekt alapú oktatóanyagok a Python koncepcióiról.
  • Python 101 – Bevezetés a Python-ba.
    • Python 201 – közbenső Python.
  • Ismerje meg a Python-t 10 perc alatt – Nagyon gyors bevezetés a nyelvbe.
  • Checkio – Tanulja meg, hogyan javíthatja kódját játékkal. Játék, nem írás.
  • Python programozási Wiki könyv
További Python oktatóanyagok

Ezek “Tiszteletteljes megemlítés” útmutatók a Python kezdetéről. Nem tettük’nem találjuk meg őket (nagyon magas) szabványainknak megfelelően, de mindegyik meglehetősen népszerű – szóval talán egyikük jól fog működni az Ön számára.

  • Pythonspot
  • Python bevezetés
  • Bemutatkozás Python-ra
  • Azonnali Python
  • Python tippek
  • Python bemutató

Python fejlesztő eszközök

Könyvtárak, beépülő modulok és kiegészítők

A Python erejének nagy része a kiváló eszközök ökoszisztémája számos különféle típusú feladat elvégzéséhez a nyelven. A grafikai feldolgozástól a matematikai elemzésig’s valószínűleg Python modul szinte minden olyan területen, ahol dolgozik.

  • Shrapnel – Python könyvtár a nagy mennyiségű párhuzamosság érdekében.
  • MatPlotLib – Grafika és adatmegjelenítés.
  • Mako – Web sablonkészítő motor.
  • PIL – Python képalkotó könyvtár
    • Párna – Villa a PIL. (Úgy tűnik, hogy a PIL abbahagyta az aktív fejlesztést. A párna felveszi a lassúságot ezen a népszerű projektnél.)
  • Pyx – Python grafikus csomag
  • Gyönyörű leves – Eszközök a képernyő méretarányához, majd az elemző fa és a tartalom kezeléséhez.
  • Scrappy – webkaparó eszközök.
  • Gooey – Eszközök GUI biztosításához a parancssori Python programok számára.
  • Peewee – minimalista SQL ORM Python alkalmazás és MySQL, PostgreSQL vagy SQLite összekapcsolásához.
  • SQL Alchemy – Teljesen kiemelt SQL ORM.
  • PyGame – Platform videojátékok építéséhez Pythonban.
  • SciPy – Tudományos és matematikai eszközök a Python számára; nagyon fontos a tudományos számítástechnika szempontjából.
  • Pandák – Adatelemző eszközök.
  • sh – könyvtár más programok hívására Python parancsfájlokból.

A Python wiki a leghasznosabb és legnépszerűbb Python modulok listáját is fenntartja.

Idus

Az IDE egy integrált fejlesztési környezet, egy eszköz egy nagy vagy összetett alkalmazás fejlesztésének kezelésére. A legtöbb Python-felhasználó hajlamos egy egyszerű kódszerkesztőben dolgozni, de számos kiváló Python-központú IDE elérhető azok számára, akik Pythonot használnak nagyobb projektekhez.

  • PyDev – Python IDE az Eclipse-hez.
  • Komodo – Python IDE
  • PyCharm – Python IDE
  • Wing IDE – Kereskedelmi Python IDE.
  • Spyder – Python IDE a tudomány és a matematika számára.
  • NetBeans
  • PyScripter
  • µ.dev – Microdev, egy furcsa kis IDE a Sakura stúdióból.

Tekintse meg a Python-szerkesztők ezen listáját is.

Refaktorálás és kód ellenőrzés

A Python-fejlesztők kultúrája inkább a tiszta és hatékony kódot részesíti előnyben. Ugyanakkor értékelik a sebességet is, és gyakran belemerülnek a kódolásba az azonnali problémák megoldása érdekében. Számos eszköz került kifejlesztésre annak érdekében, hogy a Python programozók automatizálják a kód ellenőrzésének és hatékonyabbá tételének feladatát.

  • PyChecker – Kód-ellenőrző (linter).
  • Kötél
  • Kerékpárjavítás
Építési eszközök

A Python kitűnő feladat-automatizálással rendelkezik, tehát nem meglepő, hogy számos eszköz létezik ehhez, és felgyorsítja az építési és telepítési ciklusokat..

A listába tartoznak azok a speciális fejlesztőeszközök is, amelyeket Python alkalmazások csomagolására és terjesztésére használnak.

  • Invoke – Feladat-végrehajtási és parancsfájlkészítő eszköz.
  • Microbuild – Könnyű szerkezeti eszköz.
  • Burkoló – Feladat szkriptelése.
  • Pynt – Építő eszköz.
  • VirtualEnv – eszköz elszigetelt Python környezetek felépítéséhez.
  • Bitten – folyamatos integrációs eszköz a Python és a Trac számára.
  • iPython – Interaktív Python shell és fejlesztői könyvtár; túl sok jó szolgáltatás a listához.
  • Py2Exe – A Python parancsfájlokat Windows futtatható fájlokba állítja.
Webes keretek

Ha a Python felhasználásával webes alkalmazást szeretne létrehozni, számos alacsony szintű feladat van Önnek’Először gondoskodnia kell róla – különben elindulhat a 10. lépéstől, és használhat egy webalkalmazás-fejlesztési keretet.

  • Django – messze a Python legnépszerűbb webalkalmazási kerete. Fogalmi szempontból hasonló a Ruby on Rails-hez. lásd a Django bevezetőnket
  • Python Paste – Nem keret, hanem a “keretrendszer.” Alacsony szintű eszközöket biztosít a Python webes keretrendszerek létrehozásához.
  • CherryPy – Minimalista Python webes keret.
  • Turbogears
  • Web2py
  • CubicWeb
  • Giotto
  • Reahl
  • Ziháló

Pythonba épített alkalmazások

A Python-ot nagyon sok ember használja sokféle feladatra és célra, de nem nagyon népszerű az alkalmazások építésében, amelyeket kódként terjeszthetnek a fogyasztók és a végfelhasználók számára (például a PHP is). Ennek ellenére néha erre a célra használják. Íme néhány példa a Pythonba épített alkalmazásokra.

  • SchoolTool – hallgatói információs rendszer.
Tartalomkezelő rendszerek
  • Plone – A legnépszerűbb Python-alapú CMS.
  • Django CMS – Nem olyan népszerű, mint a CMS Plone, de a legnépszerűbb Python keretrendszerre építve.
  • MoinMoin – Python wiki-motor, amely hajtja végre a Python wiki-t. (Más Python-alapú Wiki CMS-ekkel kapcsolatban lásd ezt az oldalt.)
  • CPS-CMS
  • Silva
  • ZMS

Online Python referencia

Ezek a legfontosabb egy forrásból származó Python referencia-helyek, amelyeket valószínűleg könyvjelzővel kell ellátni.

  • Python dokumentáció
  • Python Wiki
  • Népszerű Python receptek
  • Python csomag index

Könyvek

Kezdő Python

Ha inkább a nyomtatott könyv használatát szeretné megtanulni, nem hiányzik a rendelkezésre álló kiváló könyv. Íme néhány a legjobb Python-könyv kezdőknek. Ha nem’nem inkább a könyveket (vagy a don’t inkább fizetnek a dolgokért) görgessen le az Online erőforrások szakaszhoz, hogy megtalálja a kiváló online (és többnyire ingyenes) oktatóanyagokat..

  • Ismerje meg a Python kemény útját: Egy nagyon egyszerű bevezetés a számítógépek és a kód félelmetesen gyönyörű világához
  • Python gyerekeknek
  • Python ütközés tanfolyam: gyakorlati, projekt alapú bevezetés a programozásba
  • Python programozás kezdőknek: Bevezetés a Python számítógép nyelvéhez és a számítógépes programozáshoz
  • Python programozás: Bevezetés a számítástechnikába
  • Automatizálja az unalmas cuccokat a Python segítségével: Gyakorlati programozás az összes kezdő számára
  • Tanulás Python
  • Szia! Piton

Fejlett

A Python programozásának fejlettebb fogalmainak sokára az online oktatóanyagok nem vonatkoznak, és csak nyomtatott könyvekben találhatók meg.

  • Szakértői Python programozás
  • Python nagy teljesítményű programozás
  • Python párhuzamos programozási szakácskönyv
  • Python a gyakorlatban: Hozzon létre jobb programokat párhuzamosság, könyvtárak és minták segítségével
  • Fejlett Python 3 programozási technikák
  • Objektum-orientált Python elsajátítása
  • Hatékony Python: 59 jobb módszer a jobb Python írására
  • Python gépi tanulás
  • Gondolj Pythonra
  • Professzionális Python
  • Nagyteljesítményű Python: gyakorlati előadó programozás az emberek számára
  • Webkaparás a Python segítségével: Adatok gyűjtése a modern webből
  • Tesztvezérelt fejlesztés Python segítségével
  • Folyékony Python
  • Python játszótér: Geeky projektek a kíváncsi programozó számára
  • A Python hálózati programozás alapjai: Átfogó útmutató a hálózati alkalmazások Python-nal való összeállításához
  • Útmutató: Iteráció és generátorok tanulása Pythonban
Python a matematika, a tudomány és az adatok számára

A Python-ot legalább néhány okból széles körben használják a matematikában és a tudományban: – Vannak nagyszerű matematikai és tudományos eszközök a nyelv használatához, mint például a SciPy és a NumPy. – A nyelv jól használható a gyors programozási feladatok elvégzéséhez, így könnyen használható a Python ad hoc adatelemzéshez anélkül, hogy teljes funkcionalitással rendelkező alkalmazásokat építne fel..

Mint az általános haladó témákban, ha információkat keres speciális témákról a fejlett Python programozásban, akkor sokkal kiválóbb könyveket talál, mint az ingyenes webhelyeket és online oktatóanyagokat..

  • Do Matematika Python
  • Python az adatelemzéshez: az adatok összecsapása a Pandákkal, a NumPy-vel és az IPython-tal
  • Python Data Science Essentials
  • Adattudomány a Scratch-ról: Az első alapelvek a Python-nal
  • Adatbányászás megtanulása a Python segítségével
  • Speciális Python biológusok számára
  • Python for Finance: Elemezze a nagy pénzügyi adatokat
  • Adatstruktúra és algoritmikus gondolkodás Python-nal: adatstruktúra és algoritmikus rejtvények
  • Python for Informatics: Információ feltárása
  • Származékos elemzés Python segítségével
  • ArcPy és ArcGIS: Földrajzi elemzés Python segítségével
  • Tanulás Pandák – Python adatfelderítés és elemzés megkönnyítette
  • Földrajzi elemzés tanulása Python segítségével
  • Statisztika, adatbányászat és gépi tanulás a csillagászatban: gyakorlati Python útmutató a felmérési adatok elemzéséhez
Python a hackeléshez

Ad hoc programozásra és a feladatok automatizálására való alkalmasságának köszönhetően a Python eléggé szokásos módon alkalmazkodik az emberekhez, akik szeretnének dolgokra szakadni, és azokkal is, akik megpróbálják megállítani őket. (Feltételezzük, hogy Ön természetesen a jó fiúk egyike.)

  • Erőszakos Python: szakácskönyv a hackerek, a kriminalisztikai elemzők, a behatolási tesztelők és a biztonsági mérnökök számára
  • Black Hat Python: Python programozás hackerek és büntetők számára
  • Python a titkos ügynökök számára

Referencia

Íme néhány nagyszerű hivatkozás a Pythonról, azok számára, akik szeretik ezt a fajta dolgot. Noha a fent említett speciális témák némelyike ​​csak könyvkönyv, az itt található alapvető referenciaanyagok nagy részét könnyebb megtalálni online jó keresőmotor segítségével – bár néhány ember inkább nyomtatott példányokat szeretne.

  • Python Essential Reference
  • Python szakácskönyv
  • Python Pocket referencia

Python kivételek

Mivel a kivételek kritikus jelentőséggel bírnak a Python programozásában, a következő bemutatót nyújtottuk be, amely felkészíti Önt a Python ezen aspektusára..

Mi történik, ha valami rosszul fordul elő a Python program végrehajtásában? Nos, ha a következő dolog nem kivétel, akkor két dolog rosszul ment.

A Python kivételeket vet fel mindenféle hibaállapotra adott válaszként. Mint Python fejlesztő, a kivételek megmondják, mi a baj a kóddal és hol. Meghatározhatja és felveheti saját kivételeit is.

Ebben a cikkben áttekintjük a Python beépített kivételeit, és megvizsgáljuk a kivételek kezelését.

Hogyan épülnek kivételek?

Az objektum-orientált programozás elveit követve, a kivételeket a kivételes osztályok határozzák meg. Ezek az osztályok öröklési hierarchiában vannak felépítve. Az IndentationError például a SyntaxError alosztálya.

Ha egy kivétel felmerül, akkor létrejön az adott kivételi osztály példánya. Ha felismeri a hibát (ahogyan az az alábbi kivételhez hasonlóan történik), megnézheti azt.

>>> próbálja meg:
… emelje fel ValueError
… kivéve az ValueError e-t:
… print (str (típus (e)) + "n" + str (dir (e)))

[‘__cause__’, ‘__class__’, ‘__context__’,
‘__delattr__’, ‘__dict__’, ‘__dir__’,
‘__doc__’, ‘__eq__’, ‘__format__’, ‘__ge__’,
‘__getattribute__’, ‘__gt__’, ‘__hash__’,
‘__init__’, ‘__le__’, ‘__lt__’, ‘__ne__’,
‘__new__’, ‘__reduce__’, ‘__reduce_ex__’,
‘__repr__’, ‘__setattr__’, ‘__setstate__’,
‘__sizeof__’, ‘__str__’, ‘__subclasshook__’,
‘__suppress_context__’, ‘__traceback__’,
‘args’, ‘with_traceback’]

Megjegyzés a kódmintákról: Kódminták a >>> A prompt kipróbálható az interaktív tolmács segítségével. Csak írja be a python3-at a terminálba. Mindent, amelyet nem előzött meg >>> vagy … ezek kimenet. Kódminták a prompt nélkül vannak példák a kódra, amelyet valójában írhat egy .py modulban.

Absztrakt kivételek

Ezeket a kivételes osztályokat használják alapként más kivételekhez.

BaseException

Ez az alap osztály, amelyből az összes többi kivétel származik.

Kivétel

Az összes beépített, a rendszertől eltérő kivétel ebből az osztályból származik. Az összes felhasználó által meghatározott kivételt szintén ebből az osztályból kell levezetni.

osztály MyNewException (kivétel):

def __str __ (önálló):
Visszatérés "A MyNewException megtörtént."

ArithmeticError

A számtani kivételek öröklése:

  • OverflowError
  • ZeroDivisionError
  • FloatingPointError

BufferError

Emelkedik, ha egy pufferrel kapcsolatos műveletet nem lehet végrehajtani.

LookupError

Az érvénytelen kulcsokkal vagy indexekkel kapcsolatos kivételek örökítik meg. Például egy rossz kulcs egy képen vagy egy tartományon kívüli index a listán.

Konkrét kivételek

AssertionError

Emelt a sikertelen állítások alapján.

>>> állítsa 1 > 2
Érvényesítési hiba

AttributeError

Az attribútum referencia vagy hozzárendelés hibája miatt emelték.

>>> x = 1

>>> x.name
AttributeError: Az ‘int’ objektumnak nincs ‘name’ attribútuma

>>> x.név = "egy"
AttributeError: Az ‘int’ objektumnak nincs ‘name’ attribútuma

EOFError

Emelkedik, amikor az input () eléri a fájl végét (EOF) anélkül, hogy bármilyen adatot volna olvasni.

FloatingPointError

Emelés, amikor egy lebegőpontos művelet sikertelen. Vegye figyelembe, hogy ezt a kivételt általában nem veszik fel, ha nincs konfigurálva, és hogy a lebegőpontos kivételek kezelése a legtöbb nem szakértő felhasználó számára..

GeneratorExit

Emelés, amikor egy generátor vagy a kenyér bezárul. Valójában ez nem hiba, mivel a bezárás normális viselkedés.

ImportError

Emelés, amikor az importálási nyilatkozat meghiúsul.

>>> Import ModuleThatDoesNotExist
ImportError: Nincs ModuleThatDoesNotExist nevû modul

A Python 3.6-ban és későbbi verziókban található még a ModuleNotFoundError alosztály.

IndexError

Emelés, ha egy hivatkozott index érvénytelen.

>>> l = ["nulla", "egy", "két"]
>>> l [4]
IndexError: az index felsorolása a tartományon kívül esik

KeyError

Emelés, ha a szótárkulcs nem található.

>>> d = {‘TOS’: ‘Kirk’, ‘TNG’: ‘Picard’, ‘DS9’: ‘Sisko’, ‘VOY’: ‘Janeway’}
>>> horpadás’]
KeyError: ‘ENT’

KeyboardInterrupt

Emelés, amikor a megszakító kulcsot megnyomják (CTRL-C).

>>> míg igaz
… elhalad

^ C
KeyboardInterrupt

MemoryError

Emelkedik, amikor egy művelet memóriája elfogy.

NameError

Emelés, ha egy változó neve nem található.

>>> míg igaz:
… elhalad

^ C
KeyboardInterrupt

NotImplementedError

Ezt osztályokba kell írni; ezt nem emeli beépített funkció. Kétféle módon használható fel:

  • Absztrakt módszerekkel emelve, jelezve, hogy azokat származtatott osztályokban kell felülírni.
  • Eredményes osztályok szerint emeltük, hogy jelezzük, hogy végrehajtást kell hozzáadni. Ez lehetővé teszi az osztály betöltését kivétel nélkül.

OSError

Emelés, amikor egy rendszerhiba kerül vissza. Az OSErrorról további információt az alábbiakban talál.

OverflowError

Emelés, ha a matematikai művelet eredménye túl nagy.

RecursionError

Emelés, ha a maximális rekurziós mélységet túllépik.

ReferenceError

Emelés, amikor egy gyenge referencia-proxy használatával érik el az objektumot a hulladék összegyűjtése után.

Futtatási hiba

Emelés, ha olyan hibát észlelnek, amely nem tartozik a többi kategóriába sem.

StopIteration

Emelte a következő () és a __következő __ (), amikor az iterator nem készít további elemeket.

StopAsyncIteration

Nevelnie kell ANEXT () aszinkron iterátorobjektum módszer az iteráció leállítására.

Ez új a 3.5 verzióban.

Szintaktikai hiba

Szintaxishiba miatt emelték.

>>> 1 = 2
SyntaxError: nem lehet hozzárendelni a literálhoz

IndentationError

Emelés a behúzási hibák miatt.

>>> ha 1 == 1:
… x = 1
IndentationError: behúzott blokk várható

TabError

Az IndentationError alosztálya, ez akkor növekszik, ha a behúzás a füleket és a szóközöket következetlenül használja.

Rendszer hiba

Nem súlyos belső hibákra utalva.

SystemExit

Emelte a sys.exit () függvény.

Típushiba

Emelkedik, amikor egy műveletet vagy egy funkciót nem megfelelő típusú objektumra hívnak meg.

>>> 1 > "egy"
TypeError: rendezhetetlen típusok: int () > str ()

A felhasználói kódnak fel kell vennie a TypeError hibát a nem megfelelően beírt funkcióbemenetekhez.

UnboundLocalError

Emelkedik, amikor egy funkcionális vagy módszerbeli hivatkozásra egy helyi változóra kerül sor, de a változót még nem határozták meg.

UnicodeError

Alap osztály az Unicode karakterláncok kezelése során felmerülő hibákhoz. Három alkategóriája van:

  • UnicodeEncodeError
  • UnicodeDecodeError
  • UnicodeTranslateError

ValueError

Emelés, amikor egy függvény vagy művelet a megfelelő típusú argumentummal hívja meg, de nem megfelelő értékkel, kivéve, ha az amore-specifikus hiba érvényes. (Például egy tartományon kívüli index emeli az IndexError-t.)

>>> f = nyitva ("név-of-file.txt", "m")
ValueError: érvénytelen mód: ‘m’

ZeroDivisionError

Emelés, amikor megkíséreljük a nullával történő osztást.

>>> 1/0
ZeroDivisionError: nullával történő osztás

>>> 1.0 / 0
ZeroDivisionError: úszó osztás nullával

>>> 1% 0
ZeroDivisionError: egész osztás vagy nullával történő modulo

További információ az OSErrorról

Az OSError át lett dolgozva a Python 3.3-ban. Most három álnév van az OSError számára, valamint számos származtatott osztály a különféle hibaeseményekhez.

OSError álneve

  • A EnvironmentError eredetileg az OSError és az IOError alaposztálya volt.
  • Az IOError-t eredetileg bármilyen I / O művelet során bekövetkező hiba miatt felvetették, beleértve a fájlból történő nyomtatást vagy olvasást.
  • A WindowsError programot eredetileg a Windows-specifikus hibák kiküszöbölése céljából vették fel.

Mindhárom változatot kizárólag kompatibilitási célokra tartották meg, de valójában az OSError álneve.

OSError alosztályok

Ezek mind az OSError-ból származnak, és az operációs rendszer által visszaadott hibakód függvényében kerülnek feltüntetésre. Minden leírás alatt a kapcsolódó rendszerhiba található.

BlockingIOError

Emelkedik, amikor egy művelet blokkolást okozna egy objektumra, amely nem blokkolásra van beállítva.

  • EAGAIN
  • EALREADY
  • EWOULDBLOCK
  • EINPROGRESS
ChildProcessError

Emelkedik, ha a gyermekfolyamat művelete sikertelen.

  • ECHILD
Kapcsolati hiba

A csatlakozással kapcsolatos hibák alaposztálya.

alosztályok:

  • BrokenPipeError, akkor emelkedik fel, amikor zárt csőre vagy aljzatra próbálkoznak írni.
    • EPIPE; ESHUTDOWN
  • ConnectionAbortedError, emelt, majd a társ kísérlet megszakította a kísérletet.
    • ECONNABORTED
  • ConnectionRefusedError, akkor merül fel, amikor a társak megtagadják a csatlakozási kísérletet.
    • ECONNREFUSED
  • ConnectionResetError, akkor merül fel, amikor a partner visszaállítja a kapcsolatot.
    • ECONNRESET
FileExistsError

Emelkedik, ha megpróbál létrehozni egy már létező fájlt vagy könyvtárat.

  • EEXIST
FileNotFoundError

Emelés, amikor a kért fájl vagy könyvtár nem létezik.

  • ENOENT
InterruptedError

Emelés, amikor a bejövő jel megszakítja a rendszerhívást.

  • Eintr

Vegye figyelembe, hogy a Python 3.5 óta a megszakított rendszerhívások újra megpróbálkoznak, kivéve, ha a jelkezelő kivételt vet fel.

IsADirectoryError

Emelés, amikor csak egy fájlművelet (például os.remove ()) megkísérlése egy könyvtárban.

  • EISDIR
NotADirectoryError

Emelés, ha egy fájlkönyvtárban végzett műveletet (például az os.listdir ()) megkísérelnek megtenni egy fájlon vagy más, nem könyvtáros objektumon.

  • ENOTDIR.
PermissionError

Emelkedik, amikor megpróbál egy műveletet a megfelelő engedélyek nélkül végrehajtani.

  • EACCES
  • EPERM
ProcessLookupError

Emelés, amikor a hivatkozott folyamat nem létezik.

  • ESRCH
TimeoutError

Emelés, amikor egy rendszerfunkció lejár.

  • ETIMEDOUT

figyelmeztetések

Ezeket a kivételes osztályokat a figyelmeztető kivételek alaposztályaként használják.

Figyelem

Valamennyi figyelmeztető alosztály örökölte.

UserWarning

A felhasználói kód által generált figyelmeztetések öröklődnek.

DeprecationWarning

Az elavult funkciókra vonatkozó figyelmeztetések öröklődnek.

PendingDeprecationWarning

Azokat a figyelmeztetéseket örökítik meg, amelyek a jövőben elavulnak.

SyntaxWarning

A problémás szintaxissal kapcsolatos figyelmeztetések öröklődnek.

RuntimeWarning

A problémákat a futásidejű viselkedésre figyelmeztetik.

FutureWarning

Öröklődik a jövőben megváltozni vágyó konstrukciókra vonatkozó figyelmeztetések.

ImportWarning

A csomag- és modulimport esetleges hibáira vonatkozó figyelmeztetések öröklődnek.

UnicodeWarning

Az Unicode-val kapcsolatos figyelmeztetések öröklődnek.

BytesWarning

Öröklődnek a byte-kra és a bytearray-re vonatkozó figyelmeztetések.

ResourceWarning

Az erőforrás-felhasználással kapcsolatos figyelmeztetések öröklődnek.

A beépített kivételek növelése a kódjában

Érdemes lehet kivételeket felvetni a különféle felhasználói tevékenységekre válaszul. Ez olyan egyszerű, mint a felhívás. Átadhat egy karakterláncot, amelyet meg kell mutatni a felhasználó számára.

def ObnoxiousFavoriteColorAssigner (színes):
ha a típus (szín) nem str:
emelje TypeError ("Szükségem egy húrra.")
ha szín a ["piros", "zöld", "kék"]:
kedvenc színe = szín
más:
emelje ValueError ("Ez nem * valóban * szín.")

Kivételek kezelése

Az olyan kivételeket kezelheti, amelyek a kód futtatásakor előforduló kivételekkel kezelhetők, kivéve.

def EverybodyLovesRed ():
míg igaz:
próbálja meg:
ObnoxiousFavoriteColorAssigner (input ())
szünet
kivéve a TypeError hibát:
print (err)
kivéve ValueError:
ObnoxiousFavoriteColorAssigner ("piros")

Az egyedi kivételek meghatározása

Bármelyik beépített kivételt meghosszabbíthatja, hogy saját egyedi kivételeket hozzon létre. Ez leggyakrabban nagy keretek között történik.

osztály ColorError (ValueError):
"""
Emelte, ha valaki azt javasolja, hogy vannak színek
kivéve a piros, kék és zöld.
"""

def __str __ ():
Visszatérés "A színek csak a szemében léteznek."

def ObnoxiousFavoriteColorAssigner (színes):
ha a típus (szín) nem str:
emelje TypeError ("Szükségem egy húrra.")
ha szín a ["piros", "zöld", "kék"]:
kedvenc színe = szín
más:
emelje fel a ColorError-t

A helyénvaló, ha saját egyedi kivételes osztályt hoz létre, ha a dokumentációba beilleszti a releváns információkat arról, hogy mikor és hogyan lehet felhívni a kivételt. Ezen túlmenően azonban ezt a logikát nem tartalmazza a kivételt meghatározó kód.

Bővebben a Python kivételekről

  • Olvassa el a hibák hivatalos dokumentációját és a beépített kivételek teljes listáját.
  • A Python fejlesztője, Julien Danjou írta a Python Kivételek végleges útmutatóját.
  • A Codementor.io a Pythonban írja és használja az egyedi kivételeket.

Python GYIK

Mit jelent ez, hogy a Python a? “szkriptnyelv”?

A szkriptnyelv olyan nyelv, amelyet futás közben értelmeznek, nem pedig bináris végrehajtható fájlba fordítják.

Vannak, akik ezt a kifejezést használják “szkriptnyelv” jelzi, hogy a nyelv különösen jó a rövid íráshoz “szkriptek,” vagy a feladatok automatizálására használt miniatűr ad hoc programok.

A Python mindkét leíráshoz megfelel – értelmezett nyelv, és nagyon hasznos rövid, ad hoc szkriptek írására is.

Használnak olyan szkriptnyelveket, mint a Python, a teljes körű alkalmazások írásához?

Vannak olyan emberek, akik elfogultak a szkriptek / értelmezett nyelvek használatának a teljes alkalmazásokkal szemben. Ennek az elfogultságnak a bölcsessége teljesen az egyedi kontextuson múlik.

A szkriptnyelvek általában kissé lassabban futnak, mint a fordított nyelvek, és egyes esetekben ez a teljesítménybeli különbség hatalmas kérdés. A legtöbb összefüggésben azonban ez elhanyagolható aggodalom.

A Python kiválóan alkalmas bármilyen alkalmazás írására. A Django vagy más webes keret használata lehetővé teszi web-alapú alkalmazások létrehozását. A teljes sebességű alkalmazások írásához szükséges eszközökkel és képességekkel kapcsolatban a Python-ban nincs semmi hiányosság. Valójában a Python vitathatatlanul sokkal jobban megfelel az ilyen munkának, mint akár a PHP, akár a JavaScript, mindkettőt gyakran használják nagy, összetett webes alkalmazásokhoz.

Meg kellene tanulnom a Python-ot?

Ez a céljaitól függ.

Ha tipikus webes alkalmazásokat szeretne létrehozni, akkor valószínűleg meg kell tanulnia a PHP-t vagy a Rubint (és a Rails-t), valamint a JavaScriptet, a HTML-t és a CSS-t. Ott’Nem ok, amiért nem használhatta a Python-ot erre a munkára, de ez nem jellemző. A PHP és a Ruby sokkal több meglévő webes alkalmazáshoz, keretrendszerhez és webfejlesztő eszközhöz biztosít hozzáférést.

Ha programozási készségeket szeretne használni olyan feladatok közvetlen elvégzéséhez, mint például az automatizálás vagy az elemzés, a Python kiváló nyelv az ilyen fajta munka számára, és ott használja ki a legtöbbet.

Ha olyan alkalmazásokat épít, amelyeknek manipulálniuk kell az adatokat egy speciális területen vagy területen – például matematika, tudomány, pénzügy, zene vagy kriptográfia -, a Python kiváló nyelv az ilyen típusú projektekhez is..

További olvasmányok és források

További programozási és statisztikai útmutatókat, oktatóanyagokat és infografikákat találunk:

  • C Fejlesztői erőforrások: mindent, amire szükség van ennek a klasszikus nyelvnek az elindításához.
  • Bevezetés a Ruby on Rails-be: Ismerje meg ezt a népszerű szkriptnyelvot.
  • Stata programozás: A Stata az adatok elemzésének teljes fejlesztési környezete.

Milyen kódot kell megtanulnia?

Zavaros abban, hogy milyen programozási nyelvet kell megtanulnia a kódoláshoz? Nézze meg infográfunkat, Milyen kódot kell megtanulnia? Nemcsak a nyelvek különféle aspektusait tárgyalja, hanem olyan fontos kérdéseket is megválaszol, mint például: “Mennyit fogok pénzt keresni a Java megélhetéséhez?”

Milyen kódot kell megtanulnia?
Milyen kódot kell megtanulnia?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map