Programování

The Ultimate Python Beginner’s Guide

30. října 2021

Obsah

  • Nastavení prostředí
    • Nastavení místního prostředí
    • Jak získat Python
    • Jak nainstalovat Python
    • Instalace systému Windows
    • Instalace Unix/Linux
    • Instalace MAC
    • Nastavení cesty pro Python
    • Nastavení cesty pro Unix/Linux
    • Nastavení cesty pro Windows
  • Proměnné prostředí Pythonu
    • Spuštění Pythonu
  • Základní syntaxe
    • Python identifikátory
    • Příkaz Pythonu
    • Odrážky v Pythonu
    • Komentáře v Pythonu
    • Získávání vstupu
    • Zobrazte výstup
  • Typy proměnných
    • Přiřazení hodnot proměnným
    • Datové typy Pythonu
    • Struny
    • N-tice
    • Seznamy
    • čísla
  • Základní operátoři
    • Operátor přiřazení
    • Bitový operátor
    • Logický operátor
    • Aritmetický operátor
    • Porovnávací operátor
    • Operátor identity
    • Provozovatel členství
  • Rozhodování
    • Pokud prohlášení
    • pokud-jinak
    • Vnořeno pokud
    • If-elif-else-ladder
    • Zkratka if prohlášení
    • Zkratka if-others prohlášení
  • Smyčky
    • Zatímco smyčka
    • Pro Loop
    • Vnořené smyčky
    • Příkazy řízení smyčky
    • Pokračovat v prohlášení
    • Break prohlášení
    • Předat prohlášení
  • čísla
    • Převod typu čísla
    • Funkce náhodných čísel
    • Goniometrické funkce
    • Matematické funkce
  • Struny
    • Vytvoření řetězce
    • Řetězcové speciální operátory
    • Operátory formátování řetězců
    • Únikové postavy
    • Vestavěné řetězcové metody
  • N-tice
    • Přístup k hodnotám v nicích
    • Aktualizace n-tic
    • Základní n-ticové operátory
    • Vestavěné funkce Tuple
    • Indexování a krájení
    • Odstranění n-tice
  • Seznamy
    • Přístup k hodnotám v seznamech
    • Aktualizace seznamů
    • Základní operátory seznamu
    • Vestavěný seznam funkcí a metod
    • Indexování a krájení
    • Odstranit prvek seznamy
  • Slovník
    • Vytvoření slovníku
    • Přidávání prvků do slovníku
    • Odebrání prvků ze slovníku
    • Slovníkové metody Pythonu
  • Datum a čas
    • Time Tuple
    • Časový modul
    • Modul kalendáře
  • Funkce
    • Jak definovat funkci
    • Volání funkce
    • Předat odkazem
    • Mít hodnotu
    • Argumenty funkce
    • Argumenty s proměnnou délkou
    • Povinné argumenty
    • Výchozí argumenty
    • Argumenty klíčových slov
    • Anonymní funkce
  • Moduly
    • Prohlášení o dovozu
    • Výpis z importu
    • Výpis z importu *
    • Lokalizační moduly
    • Funkce locals() a globals().
    • Jmenné prostory a rozsah
    • Funkce dir().
    • Funkce reload().
  • Soubory I/O
  • Výjimky
  • Třídy a objekty
    • Vytváření tříd
    • Objekty třídy
    • Přístup k atributům
    • Vestavěné atributy třídy
    • Odvoz odpadků
    • Třídní dědičnost
    • Převažující metody
    • Regulární výrazy
    • Funkce zápasu
    • Funkce vyhledávání
    • Modifikátory regulárních výrazů
    • Vzory regulárních výrazů
    • Třídy postav
    • Případy opakování
    • Kotvy
  • Programování CGI
    • Procházení webu
    • HTTP hlavička
    • Proměnné prostředí CGI
    • metoda GET
    • metoda POST
    • Používání cookies v CGI
    • Jak to funguje?
  • Přístup k databázi MySQL
    • Vytváření databázové tabulky
    • Operace INSERT
    • Operace READ
    • Operace aktualizace
    • Operace DELETE
    • Provádění transakcí
    • Operace COMMIT
    • Operace ROLLBACK
    • Odpojení databáze
    • Zpracování chyb
  • sítě
    • Co jsou zásuvky?
    • Zásuvkový modul
    • Internetové moduly Python
  • Odesílání e-mailu
    • Odeslání HTML e-mailu pomocí Pythonu
    • Odesílání příloh jako e-mail
  • Vícevláknové programování
    • Zakládání nového vlákna
    • Modul závitování
    • Synchronizace vláken
    • Vícevláknová prioritní fronta
  • Zpracování XML
    • Co je XML?
    • Architektury a API XML Parser
    • Analýza XML pomocí SAX API
      • Metoda make_parser
      • Metoda analýzy
      • Metoda parseString
  • Programování GUI
    • Tkinter widgety
  • Správa geometrie
  • Doporučené články

Soubory I/O

Dosud jsme přebírali vstup z konzole a zapisovali jsme jej zpět do konzole, abychom mohli komunikovat s uživatelem. Někdy nestačí zobrazit data na konzole. Informace, které mají být zobrazeny, mohou být rozsáhlé. Na konzoli lze zobrazit pouze malé množství dat, protože paměť je erupční. Někdy je obtížné obnovit data znovu a znovu.

V tomto souboru hraje manipulace zásadní roli, když je třeba data trvale uložit do souboru. K uloženým informacím můžete přistupovat po ukončení programu.

Otevření souboru

Python nabízí funkci open(), která přijímá dva argumenty, režim přístupu a název souboru, ve kterém se k souboru přistupuje. Funkce vrací objekt souboru, který může provádět různé operace, jako je čtení, zápis atd.

Ano ne Režim přístupu Popis
jeden r Otevře soubor pro režim pouze pro čtení. Ukazatel souboru je na začátku. Pokud neprojde žádný přístupový režim, soubor je ve výchozím nastavení otevřený v tomto režimu.
dva rb Otevře soubor pouze pro čtení v binárním formátu. Ukazatel souboru je na začátku.
3 r+ Otevře soubor pro čtení i zápis. Ukazatel souboru je na začátku.
4 rb+ Otevře soubor pro čtení i zápis v binárním formátu. Ukazatel souboru je na začátku.
5 v Otevře soubor pouze pro zápis. Pokud žádný soubor se stejným názvem neexistuje, přepíše soubor nebo vytvoří nový. Ukazatel souboru je na začátku.
6 wb Otevře soubor pro zápis pouze v binárním formátu. Pokud žádný soubor neexistuje, přepíše soubor nebo vytvoří nový. Ukazatel souboru je na začátku.
7 v + Otevře soubor pro zápis i čtení. Přepíše předchozí soubor nebo vytvoří nový soubor, pokud žádný soubor neexistuje. Ukazatel souboru je na začátku.
8 wb+ Otevře soubor pro zápis i čtení v binárním formátu. Ukazatel souboru je na začátku.
9 na Otevře soubor pro připojení. Ukazatel souboru je na konci souboru. Pokud soubor není přítomen, vytvoří se nový soubor pro zápis.
10 pryč Otevře soubor pro připojení v binárním formátu. Ukazatel souboru je na konci souboru. Pokud soubor není přítomen, vytvoří se nový soubor pro zápis.
jedenáct a+ Otevře soubor pro připojení i čtení. Ukazatel souboru je na konci souboru. Pokud soubor není přítomen, vytvoří se nový soubor pro zápis a čtení.
12 ab+ Otevře soubor pro čtení a připojení v binárním formátu. Ukazatel souboru je na konci souboru. Pokud soubor není přítomen, vytvoří se nový soubor pro čtení a zápis
img 617dd2714c751

VÝSTUP

img 617dd2719c731

Atributy objektu souboru

Ano ne Atribut Popis
jeden soubor.uzavřeno Pokud je soubor uzavřen, vrátí hodnotu true. Jinak falešné
dva název souboru Vrací název souboru.
3 soubor.režim Vrátí přístupový režim, ve kterém byl soubor otevřen.
4 file.softspace Vrací false, pokud je pro tisk vyžadován prostor. Jinak pravda.

Zavření souboru

Jakmile jsou všechny operace provedeny, musíte soubory zavřít pomocí skriptu Python pomocí zavřít() metoda. Jakákoli informace, která není zapsána, je jednou zničena zavřít() metoda se volá na souborový objekt.

Operace se souborem můžete provádět externě pomocí souborového systému, který je otevřen v Pythonu; proto je dobrým zvykem zavřít soubor po dokončení všech operací.

SYNTAX

|_+_|

S prohlášením

Příkaz with se používá tam, kde se má provést dvojice příkazů s blokem kódu mezi nimi.

Výhodou příkazu with je, že zajišťuje uzavření souboru bez ohledu na ukončení vnořeného bloku.

Vždy se doporučuje použít v souborech příkaz with, protože automaticky zavře soubor, pokud v kódu dojde k návratu, přerušení nebo výjimce. Nemusíte psát funkci close(). Nedovolí poškození souboru.

SYNTAX

|_+_|

Metoda zápisu

Metoda write() zapíše řetězec do otevřeného souboru. Je nezbytné, aby řetězce Pythonu mohly mít binární data a ne pouze text. Metoda Write() nepřidává znak nového řádku (‚ ‘) na konec řetězce.

SYNTAX

|_+_|

Metoda čtení

Metoda read() čte řetězec z otevřeného souboru. Je nezbytné, aby řetězce Pythonu mohly mít binární data kromě textových dat.

SYNTAX

|_+_|

Metoda rename().

Metoda rename() přebírá dva argumenty, nový název souboru a aktuální název souboru.

SYNTAX

|_+_|

Metoda remove().

Metoda remove() odstraní soubory zadáním názvu souboru, který má být odstraněn, jako argumentu.

SYNTAX

|_+_|

Pozice souboru

  • Metoda tell() vám řekne o aktuální pozici v souboru.
  • Metoda seek(offset[, from]) změní pozici aktuálního souboru. Argument offset označuje počet bajtů, které je potřeba přesunout.

Výjimky

Co je to výjimka?

Výjimkou je událost, ke které obvykle dochází během provádění programu a která narušuje normální tok instrukcí programu. Jednoduše řečeno, když skript Pythonu narazí na situaci, se kterou si nedokáže poradit, vyvolá výjimku. Výjimkou je objekt Pythonu, který představuje chybu. Když skript Pythonu vyvolá výjimku, musí výjimku buď okamžitě zpracovat; jinak se ukončí a ukončí.

Zpracování výjimky

Pokud nějaké máte podezřelý kód, který může vyvolat výjimku, můžete svůj program bránit umístěním podezřelého kódu do bloku try:. Po bloku try: zahrňte příkaz výjimkou a za ním blok kódu, který problém řeší co nejelegantněji.

SYNTAX

|_+_| img 617dd2722b717

VÝSTUP

Vyhlášení výjimky

Výjimky můžete vyvolávat různými způsoby pomocí příkazu raise.

SYNTAX

|_+_|

Seznam standardních výjimek

Ano ne Název výjimky Popis
jeden StandardníError Základní třída pro všechny vestavěné výjimky kromě StopIteration a SystemExit.
dva SystemExit Je vyvolána funkcí sys.exit().
3 StopIteration Vyvolá se, když metoda next() iterátoru neukazuje na žádný objekt.
4 Výjimka Je to základní třída pro všechny výjimky
5 OverflowError Je zvýšena, když výpočet překročí maximální limit pro číselný typ.
6 Aritmetická chyba Je to základní třída pro všechny chyby, ke kterým dochází při numerických výpočtech.
7 ZeroDivisionError Zvýší se, když dojde k dělení nebo modulo nulou pro všechny číselné typy.
8 FloatingPointError Je zvýšena, když selže výpočet s pohyblivou řádovou čárkou.
9 AttributeError Vyvolá se v případě selhání odkazu na atribut.
10 AssertionError Je vznesena v případě selhání příkazu Claim.
jedenáct EOFEChyba Vyvolá se, když není žádný vstup z funkce raw_input() nebo input() a vy jste dosáhli konce souboru.
12 ImportError Vyvolá se, když příkaz importu selže.
13 LookupError Je to základní třída pro všechny chyby vyhledávání.
14 Přerušení klávesnice Vyvolá se, když uživatel přeruší provádění programu stisknutím Ctrl+c.
patnáct KeyError Zvedne se, když klíč není nalezen ve slovníku.
16 IndexError Vyvolá se, když není v sekvenci nalezen index.
17 EnvironmentError Je to základní třída pro všechny výjimky, které se vyskytují mimo prostředí pythonu.
18 UnboundLocalError Vyvolá se, když se pokusíte o přístup k místní proměnné ve funkci nebo metodě, ale není k ní přiřazena žádná hodnota.
19 NameError Vyvolá se, když není v globálním nebo lokálním globálním jmenném prostoru nalezen identifikátor.
dvacet SystemExit Vyvolá se, když ukončíte interpret pythonu pomocí funkce sys.exit(). Pokud není kód zpracován, způsobí ukončení interpretru
dvacet jedna Chyba syntaxe Vyvolá se, když dojde k chybě v syntaxi pythonu.
22 IOError Je aktivována pro chyby související s operačním systémem.
23 Chyba systému
Vyvolá se, když interpret nalezne vnitřní problém, ale když dojde k chybě, interpret pythonu neexistuje.
24 IndentationError zvedne se, když odsazení není správně specifikováno.
25 TypeError Vyvolá se při pokusu o operaci a pro zadaný datový typ je neplatný.
26 ValueError Vyvolá se, když má vestavěná funkce pro datový typ platný typ argumentu, ale argument má zadané neplatné hodnoty.
27 NotImplementedError Vyvolá se, když abstraktní metoda, která má být implementována ve zděděné třídě, není ve skutečnosti implementována.
28 RuntimeError Vyvolá se, když chyba nespadá do žádné kategorie.

Uživatelem definované výjimky

Python vám umožňuje vytvářet výjimky odvozením tříd z vestavěných výjimek.

To je užitečné, když potřebujete zobrazit přesnější informace, když je zachycena výjimka.

V bloku try je vyvolána uživatelem definovaná výjimka a je zachycena v bloku výjimkou. Proměnná se používá k vytvoření instance třídy Networkerror.

Tvrzení v Pythonu

Toto tvrzení je kontrola zdravého rozumu, kterou můžete zapnout nebo vypnout, když skončíte s testováním svého programu.

Snadný způsob, jak myslet na tvrzení, je zvýšit-if tvrzení. Výraz je testován, a pokud je výsledek nepravdivý, vyvolá se výjimka.

Programátoři obecně umísťují aserce na začátek funkce pro kontrolu platného vstupu a po volání funkce pro kontrolu přesného výstupu.

SYNTAX

|_+_|