Python Základní operace Vestavěné funkce a standardní moduly Pythonu

Podobné dokumenty
Programování v Pythonu

Objektově orientované programování v jazyce Python

Objektově orientované programování v jazyce Python

SPJA, cvičení 1. ipython, python, skripty. základy syntaxe: základní datové typy, řetězce. podmínky: if-elif-else, vyhodnocení logických výrazů

10 Balíčky, grafické znázornění tříd, základy zapozdření

Práce se soubory. Základy programování 2 Tomáš Kühr

Programování v Pythonu

rychlý vývoj webových aplikací nezávislých na platformě Jiří Kosek

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

Základní příkazy pro práci se soubory

Střední odborná škola a Střední odborné učiliště, Hořovice

Algoritmus. Algoritmus je posloupnost kroků, které jsou potřeba k vyřešení problému.

Matematika v programovacích

Obsah přednášky 7. Základy programování (IZAPR) Přednáška 7. Parametry metod. Parametry, argumenty. Parametry metod.

Konečný automat. Jan Kybic.

C2110 Operační systém UNIX a základy programování

IUJCE 07/08 Přednáška č. 1

PSK3-5. Přesměrování vstupu a výstupu. Vstup a výstup

1. lekce. do souboru main.c uložíme následující kód a pomocí F9 ho zkompilujeme a spustíme:

2.2 Acronis True Image 19

Instalace. Produkt je odzkoušen pro MS SQL server 2008 a Windows XP a Windows 7. Pro jiné verze SQL server a Windows nebyl testován.

Přednáška 2. Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. Úvod do Operačních Systémů Přednáška 2

Programy v prostředí operačního systému

konec šedesátých let vyvinut ze systému Multics původní účel systém pro zpracování textů autoři: Ken Thompson a Denis Ritchie systém pojmnoval Brian

Platforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13

Vývojové nástroje jazyka Java

Karel Bittner HUMUSOFT s.r.o. HUMUSOFT s.r.o.

VÝPOČETNÍ TECHNIKA OBOR: EKONOMIKA A PODNIKÁNÍ ZAMĚŘENÍ: PODNIKÁNÍ FORMA: DENNÍ STUDIUM

MIDAM Verze 1.1. Hlavní okno :

Úvod do Operačních Systémů

Programování v Pythonu

zapište obslužnou metodu události Click tlačítka a vyzkoušejte chování polevýsledek.text = polečíslo1.text + polečíslo2.text;

Unix je víceuživatelský a víceúlohový OS

Střední odborná škola a Střední odborné učiliště, Hořovice

Operační systémy 2: Zápočtové úkoly

1. Webový server, instalace PHP a MySQL 13

1 Webový server, instalace PHP a MySQL 13

A7B38UOS Úvod do operačních systémů. 6. Cvičení. Příkazy sed a awk

Tabulkový procesor. Základní rysy

Proměnné a parametry. predn_08.odt :00:38 1

02. HODINA. 2.1 Typy souborů a objektů. 2.2 Ovládací prvky Label a TextBox

Django Urls, views, templates

5 Přehled operátorů, příkazy, přetypování

Úvod do Linuxu SŠSI Tábor 1

Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Jarkovský, L. Dušek, M. Cvanová. 5. Statistica

Nápověda k aplikaci EA Script Engine

Operační systémy. Cvičení 3: Programování v C pod Unixem

IMPLEMENTACE OPERAČNÍHO SYSTÉMU LINUX DO VÝUKY INFORMAČNÍCH TECHNOLOGIÍ

DSL manuál. Ing. Jan Hranáč. 27. října V této kapitole je stručný průvodce k tvorbě v systému DrdSim a (v

Úvod do Operačních Systémů

Maturitní témata Školní rok: 2015/2016

Programování v C++ Úplnej úvod. Peta (maj@arcig.cz, SPR AG )

monolitická vrstvená virtuální počítač / stroj modulární struktura Klient server struktura

KRY. Projekt č. 2. Kamil Dudka xdudka00

SQL a XML jako alternativa ke klasickým unixovým nástrojům

8 Třídy, objekty, metody, předávání argumentů metod

Windows a real-time. Windows Embedded

Allegro release ( )

VISUAL BASIC. Práce se soubory

Popis programu EnicomD

Zápis programu v jazyce C#

Předmluva 11 Typografická konvence použitá v knize Úvod do Excelu

Maturitní témata pro 1.KŠPA Kladno, s.r.o. Výpočetní technika

InterSystems Caché Post-Relational Database

Základy programování (IZP)

Chyby a výjimky. Chyba. Odkud se chyby berou? Kdo chyby opravuje? Co můžete dělat jako programátor? Dvě hlavní metody práce s chybami.

Úvod do Operačních Systémů

Embedded vývoj v Clutteru a Mx

Operační systémy. Cvičení 4: Programování v C pod Unixem

Motivace. Vstup a výstup. Minimální komunikace. Motivace. ÚDPJ - Vstup a výstup. Ing. Lumír Návrat katedra informatiky, A

Lekce 2. Řetězce a práce s nimi. Vstup a výstup. C2184 Úvod do programování v Pythonu podzim 2016

LINUX přesměrování a roury

Příloha č. I: Schéma zapojení vývojové desky PVK-PRO

Další nutný soubor je laydiv.js, ve kterém jsou uloženy funkce pro zobrazování virů na ploše a funkce pro odkaz na Teachers Guide.

Maturitní otázky z předmětu PROGRAMOVÁNÍ

Úvod do jazyka C. Ing. Jan Fikejz (KST, FEI) Fakulta elektrotechniky a informatiky Katedra softwarových technologií

PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

Práce se soubory. Úvod do programování 2 Tomáš Kühr

Dokumentace k produktu IceWarp Notifikační nástroj

Rozšíření ksh vůči sh při práci s proměnnými

VDDMAIL by ESCAD, Corp. (Součást IWSE.NET Services by ESCAD, Corp.)

Základy IOS, Přepínače: Spanning Tree

Doxygen. Jakub Břečka

Počítačová Podpora Studia. Přednáška 5 Úvod do html a některých souvisejících IT. Web jako platforma pro vývoj aplikací.

Vlákno (anglicky: thread) v informatice označuje vlákno výpočtu neboli samostatný výpočetní tok, tedy posloupnost po sobě jdoucích operací.

Paměť počítače. alg2 1

Jak spustit PC Fand na 64bit Windows - VdosPlus instalace

v. 2425a Jak si na PC vypěstovat HTTP (WWW, Web) server a jak ho používat (snadno a rychle) by: Ing. Jan Steringa

Programování v Pythonu

OPERAČNÍ SYSTÉM. základní ovládání. Mgr. Jan Veverka Střední odborná škola sociální obor ošetřovatel

Podpora skriptování v Audacity

Prezentace XML. XML popisuje strukturu dat, neřeší vzhled definice vzhledu:

EVROPSKÝ SOCIÁLNÍ FOND. Úvod do PHP PRAHA & EU INVESTUJEME DO VAŠÍ BUDOUCNOSTI

Střední odborná škola a Střední odborné učiliště, Hořovice

Funkce, řetězce, moduly

TIA Portal Openness Generování projektu.

Operační systémy. Cvičení 1: Seznámení s prostředím

Obsah. Kapitola 1 Začínáme s jazykem ABAP a systémem SAP Přehled architektury systému SAP...16

6. blok část B Vnořené dotazy

Transkript:

Python Základní operace Vestavěné funkce a standardní moduly Pythonu Michal Čihař mcihar@suse.cz

Vestavěné funkce

3 Vestavěné funkce Převody mezi typy Základní matematické operace Práce s objektovým modelem Přístup k prvkům či jejich vypsání Dekorátory pro atributy či třídní metody V Pythonu 3 mnoho nahrazeno metodami odpovídajících objektů

4 Převody mezi typy Některé typy nelze vytvořit přímo bytearray('abc') set((1, 3, 5)) Vynucené převody int(), str(), float(), tuple(), bool(),...

5 Manipulace s objekty Dědičnost super(), isinstance(), issubclass() Práce s atributy setattr(), getattr(), delattr(), hasattr() dir() Dekorátory Podrobněji probereme příště property(), classmethod(), staticmethod()

6 Matematické operace Výpočty abs(), divmod(), pow() Práce s poli max(), min(), sum() Převody mezi soustavami oct(), hex(), bin() int(x, base)

7 Vstup a výstup Jednoduchý vstup input() Pokud je natažen modul readline, tak se použije Výstup print() V Pythonu 2.x se používalo print x

8 Nápověda Zobrazuje dokumentaci v interaktivním režimu help(objekt) help('jmeno')

9 Spouštění kódu Spuštění libovolného kódu eval() Kompilace do byte-kódu compile() Spuštění zkompilovaného kódu exec()

Práce se soubory

11 Souborové objekty Standardní rozhraní pro souborové objekty Nemusí mít společného předka Téměř všude se dá použít vlastní objekt, pokud implementuje toto rozhraní

12 Otevření souboru Vestavěná funkce open open(soubor, režim,...) Režim otevírání Přístup (r/w/x/a) Zpracování textu (t/b)

13 Ošetření chyb Je možné použít try...except...finally Od Pythonu 2.6 je vhodnější použít kontext, který se automaticky postará o uzavření při odchodu z bloku: with open('/etc/passwd') as passwd: passwd.read()

Standardní knihovna

15 Standardní knihovna Obsahuje všechno důležité Práce s textem string, re, difflib, unicodedata, Práce s čísly math, cmath, decimal, fractions, random,... Soubory a adresáře os, stat, tempfile, glob, fnmatch, shutil,... Formáty souborů csv, configparser, xdrlib,...

Přístup k systému a informace o něm

17 Modul sys Obsahuje základní informace o systému Konfigurace Pythonu Informace o příkazové řádce

18 Parametry z příkazové řádky Parametry uloženy v sys.argv odpovídá argv v C #!/usr/bin/python import sys for param in sys.argv: print(param)

19 Informace o systému Informace o platformě sys.byteorder sys.float_info sys.getsizeof() sys.platform Informace o Pythonu sys.version sys.api_version sys.flags

20 Standardní vstup a výstup Aktuální hodnoty, dají se měnit sys.stdin sys.stdout sys.stderr Hodnoty ze spuštění sys. stdin sys. stdout sys. stderr Některé mohou být None

21 Vyhledávací cesta Určuje adresáře, ve kterých Python hledá moduly Dá se nastavit proměnnou prostředí PYTHONPATH Základní cesty nastavené při kompilaci Standardně se vyhledává i v aktuálním adresáři Přístupné jako sys.path Je možné měnit za běhu: #!/usr/bin/python import sys sys.path.append('/path/to/modules')

Rozhraní operačního systému

23 Modul os Základní rozhraní operačního systému Práce se soubory, procesy a terminály Většina toho co je nadefinovaná v unistd.h Mnoho funkcí není dostupných na Windows

24 Prostředí Kompletní prostředí přístupné přes os.environ Chová se jako standardní slovník Změny se propagují do prostředí (pokud to platforma podporuje) Načte se při prvním importu modulu os (typicky při startu) Funkce Změny se neprojeví v os.environ os.getenv() os.putenv() os.unsetenv()

25 Aktuální adresář Podobně jako v C os.chdir() os.fchdir() os.getcwd()

26 Uživatelé a skupiny Podobně jako v C os.getuid() os.getgid() os.seteuid() os.getgroups()...

27 Práce s adresáři Výpis adresáře os.listdir() Vytváření os.mkdir() os.makedirs() Procházení os.walk() Vymazání os.rmdir()

28 Práce se soubory Klasické operace os.chmod() os.chown() os.link() os.mknod() os.remove() os.stat()

29 File descriptory Nízkoúrovňová práce se soubory Vytvoření souborového objektu os.fdopen() Běžné operace os.open(), os.dup() os.read(), os.write() os.close()...

Práce s cestami

31 Modul os.path Manipulace s cestami souborů Testování vlastností cest

32 Převody cest Absolutní a relativní cesty os.path.abspath(path) os.path.relpath(path[, start]) Uživatelské cesty (~/Documents) os.path.expanduser(path) Kanonická cesta os.path.realpath(path)

33 Rozdělení a spojení názvu souboru Rozdělování os.path.basename() Chová se jinak než basename v případě, že cesta končí na / os.path.dirname() os.path.splitdrive() os.path.splitext() Spojování os.path.join()

34 Testování cest Existence os.path.exists() Různé typy os.path.isdir() os.path.isfile() os.path.islink() os.path.ismount()

Manipulace se soubory

36 Modul shutil Obsahuje funkce pro práci se soubory Operace podobné jako v shellu shutil.copy() shutil.copytree() shutil.rmtree() shutil.move() Mnoho rozšíření v Pythonu 3.2 a 3.3 3.2: shutil.make_archive(), shutil.unpack_archive() 3.3: shutil.chown(), shutil.which(), shutil.disk_usage()

Práce s textem

38 Formátování Python 2 >>> name = 'John' >>> print 'Hello %s' % name Hello John >>> print 'Hello %(name)s' % {'name': name} Hello John Python 3 >>> print('hello {1}'.format(name)) Hello John >>> print('hello {name}'.format(name=name)) Hello John

39 Regulární výrazy Modul re Syntaxe podobná jako v Perlu Různá rozšíření v podobě (?...) >>> import re >>> match = re.match(r'id=(?p<id>\d*)', 'id=123456') >>> print(match.group('id')) '123456'

40 Ukecané regulární výrazy Umožní se vyznat v regulárních výrazech Ignoruje mezery komentáře PRINTF_RE = r'''%( # initial % (?P<fullvar> [+#-]* # flags (?:\d+)? # width (?:\.\d+)? # precision (hh\ h\ l\ ll)? # length formatting (?P<type>[\w%])) # type (%s, %d, etc.) )''' REGEXP = re.compile(printf_re, re.verbose)

Další zdroje informací

42 Dokumentace Oficiální dokumentace Popis jazyka, tutorial, popis standardní knihovny, API http://docs.python.org/2/ http://docs.python.org/3/ Knihy Dive into Python 3 / Ponořme se do Pythonu 3 Expert Python Programming Vestavěná nápověda v příkazové řádce Prezentaci naleznete na http://cs.cihar.com/talks/2013/python/

43 Nějaké dotazy? Thank you.

44 Corporate Headquarters Maxfeldstrasse 5 90409 Nuremberg Germany +49 911 740 53 0 (Worldwide) www.suse.com Join us on: www.opensuse.org