A Python alapjainak áttekintése

Hasonló dokumentumok
Mi a Python? A Python alapjainak áttekintése. Példaprogram feladatkit zés. Példaprogram megvalósítás

Mi a Python? A Python alapjainak áttekintése. Példaprogram feladatkit zés. Példaprogram megvalósítás

Imperatív programozás

Python tanfolyam Python bevezető I. rész

Adattípusok, vezérlési szerkezetek. Informatika Szabó Adrienn szeptember 14.

Az Összetett hálózatok vizsgálata elektronikus tantárgy részletes követeleményrendszere

A Python programozási nyelv

A Python programozási nyelv

Gyakorló feladatok Gyakorló feladatok

Ismerkedés a Python programnyelvvel. és annak micropython változatával

Programozási nyelvek Python

Python bevezető foglalkozás Python bevezető foglalkozás

Imperatív programozás

Hálózatok építése és üzemeltetése

van neve lehetnek bemeneti paraméterei (argumentumai) lehet visszatérési értéke a függvényt úgy használjuk, hogy meghívjuk

Listák, szótárak, fájlok Listák, szótárak, fájlok

BASH script programozás II. Vezérlési szerkezetek

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

S z á m í t ó g é p e s a l a p i s m e r e t e k

Python I. Vincze Dávid Miskolci Egyetem, IIT

PYTHON. Avagy hosszú az út a BioPythonig

1. Alapok. #!/bin/bash

Változók és adattípusok Változók és adattípusok

2. modul Python bevezetés

Szkriptnyelvek. 1. UNIX shell

Komputeralgebra Rendszerek

Vezérlési szerkezetek Vezérlési szerkezetek: feltételes elágazás és ciklusok

Operációs rendszerek gyakorlat

OOP I. Egyszerő algoritmusok és leírásuk. Készítette: Dr. Kotsis Domokos

A C# programozási nyelv alapjai

Bevezetés a Python programozási nyelvbe

Számítógépes Hálózatok. 1. Gyakorlat

Matematikai programok

Szoftvertechnológia alapjai Java előadások

Fordított és szkript nyelvek összehasonlító elemzése. Sergyán Szabolcs

Programozás alapjai. 5. előadás

PHP. Telepítése: Indítás/újraindítás/leállítás: Beállítások: A PHP nyelv

2018, Diszkrét matematika

1. Egészítsük ki az alábbi Python függvényt úgy, hogy a függvény meghatározza, egy listába, az első n szám faktoriális értékét:

2016, Funkcionális programozás

2016, Diszkrét matematika

Imperatív programozás

Térinformatikai programozás Pythonban

Operációs Rendszerek II. labor. 2. alkalom

Funkcionális és logikai programozás. { Márton Gyöngyvér, 2012} { Sapientia, Erdélyi Magyar Tudományegyetem }

Függvények Függvények

2018, Funkcionális programozás

BME MOGI Gépészeti informatika 4.

Informatika terméktervezőknek

Bánsághi Anna 2014 Bánsághi Anna 1 of 68

2016, Diszkrét matematika

A félév során előkerülő témakörök

2015, Diszkrét matematika

Változók. Mennyiség, érték (v. objektum) szimbolikus jelölése, jelentése Tulajdonságai (attribútumai):

Számítógépes Hálózatok. 1. gyakorlat

2018, Diszkrét matematika

2019, Funkcionális programozás. 2. el adás. MÁRTON Gyöngyvér

Bevezetés a programozásba I.

1. Jelölje meg az összes igaz állítást a következők közül!

2018, Diszkrét matematika

Matematikai programok

2018, Diszkre t matematika. 8. elo ada s

Az iskolai rendszerű képzésben az összefüggő szakmai gyakorlat időtartama. 10. évfolyam Adatbázis- és szoftverfejlesztés gyakorlat 50 óra

Ismerkedés a Python programnyelvvel. és annak micropython változatával

2018, Diszkre t matematika. 10. elo ada s

Bevezetés a Python használatába

AWK programozás, minták, vezérlési szerkezetek

Occam 1. Készítette: Szabó Éva

AWK programozás, minták, vezérlési szerkezetek

Bevezetés a programozásba I.

A programozás alapjai előadás. Amiről szólesz: A tárgy címe: A programozás alapjai

Objektumorientált Programozás III.

Alapok. tisztán funkcionális nyelv, minden függvény (a konstansok is) nincsenek hagyományos változók, az első értékadás után nem módosíthatók

Java és web programozás

.Net adatstruktúrák. Készítette: Major Péter

Operációs rendszerek. 11. gyakorlat. AWK - szintaxis, vezérlési szerkezetek UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Programozás I. 3. gyakorlat. Szegedi Tudományegyetem Természettudományi és Informatikai Kar

Programozás alapjai gyakorlat. 4. gyakorlat Konstansok, tömbök, stringek

Adatbázis-kezelés ODBC driverrel

Programozási nyelvek JAVA EA+GY 1. gyakolat

Webprogramozás szakkör

Apple Swift kurzus 3. gyakorlat

Java Programozás 1. Gy: Java alapok. Ismétlés ++

2016, Diszkrét matematika

A JavaScript főbb tulajdonságai

Mutatók és címek (ism.) Programozás alapjai C nyelv 8. gyakorlat. Indirekció (ism) Néhány dolog érthetőbb (ism.) Változók a memóriában

Példatár a bevezetés a Matlab programozásába tárgyhoz

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

length (s): Az s karaklerlánc hossza, substr(s,m,n): Az s mezőben levő karakterláncnak az m-edik karakterétől kezdődő, n darab karaktert vágja ki.

2018, Diszkrét matematika

2019, Diszkrét matematika. 1. el adás

A C# PROGRAMOZÁSI NYELV

A C programozási nyelv I. Bevezetés

A C programozási nyelv I. Bevezetés

Számítógépes Hálózatok GY 1.hét

Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

7. Laboratóriumi gyakorlat: Vezérlési szerkezetek II.

Programozás I. Matematikai lehetőségek Műveletek tömbökkel Egyszerű programozási tételek & gyakorlás V 1.0 OE-NIK,

Java programozási nyelv

OOP: Java 4.Gy: Java osztályok

Átírás:

A Python alapjainak áttekintése 2016. február 29.

Vázlat 1 A Python adatszerkezetei A Python vezérlési szerkezetei 2 Modulok kezelése Példák modulokra

Vázlat 1 A Python adatszerkezetei A Python vezérlési szerkezetei 2 Modulok kezelése Példák modulokra

Mi a Python? Általános célú programnyelv

Mi a Python? Általános célú programnyelv rengeteg beépített és egyéb modullal.

Mi a Python? Általános célú programnyelv rengeteg beépített és egyéb modullal. Dinamikusan típusos (egyszer egész másszor lista)

Mi a Python? Általános célú programnyelv rengeteg beépített és egyéb modullal. Dinamikusan típusos (egyszer egész másszor lista) Objektumorientált (adattípusoknak saját függvényei lehetnek)

Mi a Python? Általános célú programnyelv rengeteg beépített és egyéb modullal. Dinamikusan típusos (egyszer egész másszor lista) Objektumorientált (adattípusoknak saját függvényei lehetnek) Platformfüggetlen bytekódot készít

Mi a Python? Általános célú programnyelv rengeteg beépített és egyéb modullal. Dinamikusan típusos (egyszer egész másszor lista) Objektumorientált (adattípusoknak saját függvényei lehetnek) Platformfüggetlen bytekódot készít Könnyen beágyazhatóak C és Fortran programok (Pylab)

Példaprogram feladatkit zés Készítsünk egy függvényt, amely a egyenlet gyökeit adja vissza. A gyökök: ax 2 + bx + c = 0 x 1,2 = b ± b 2 4ac 2a

Példaprogram megvalósítás from math import sqrt def masodfoku(a, b, c): D = b**2-4*a*c if D < 0: print("nincs valós gyök.") return elif D == 0: print("kett s (valós) gyök van.") else: print("két eltér valós gyök van.") x1 = (-b + sqrt(d)) / 2*a x2 = (-b - sqrt(d)) / 2*a return x1, x2

A szerz Guido von Rossum, holland

A szerz Guido von Rossum, holland Jelenleg a Google alkalmazottja

Miért Python? Na vajon miért?

Miért Python? Na vajon miért? A szerz kedvence a Monty Python's Flying Circus

Miért Python? Na vajon miért? A szerz kedvence a Monty Python's Flying Circus A dokumentációban ajánlott a Monty Python idézet

Vázlat 1 A Python adatszerkezetei A Python vezérlési szerkezetei 2 Modulok kezelése Példák modulokra

Számok egész (int) 1, 2123123123123123118978970

Számok egész (int) 1, 2123123123123123118978970 lebeg pontos (oat) 3.14, 1.6e-19 (math modul)

Számok egész (int) 1, 2123123123123123118978970 lebeg pontos (oat) 3.14, 1.6e-19 (math modul) komplex (complex) 1+3j, 2j (cmath modul)

Számok egész (int) 1, 2123123123123123118978970 lebeg pontos (oat) 3.14, 1.6e-19 (math modul) komplex (complex) 1+3j, 2j (cmath modul) M veletek +, -, *, /, ** (hatvány)

Számok egész (int) 1, 2123123123123123118978970 lebeg pontos (oat) 3.14, 1.6e-19 (math modul) komplex (complex) 1+3j, 2j (cmath modul) M veletek +, -, *, /, ** (hatvány) M veletek egészeknél % (mod), //, bitenkénti m veletek

Karakterláncok (str, sztring) 'Szelet', 'alma\nkörte', "that's it"

Karakterláncok (str, sztring) 'Szelet', 'alma\nkörte', "that's it" Többsoros karakterlánc '''A többsoros szövegeket három idéz jel (" vagy ') határolja.'''

Karakterláncok (str, sztring) 'Szelet', 'alma\nkörte', "that's it" Többsoros karakterlánc '''A többsoros szövegeket három idéz jel (" vagy ') határolja.''' Metódusok: split, splitlines, upper, center, rjusti, format...

Karakterláncok (str, sztring) 'Szelet', 'alma\nkörte', "that's it" Többsoros karakterlánc '''A többsoros szövegeket három idéz jel (" vagy ') határolja.''' Metódusok: split, splitlines, upper, center, rjusti, format... M veletek: +

Karakterláncok (str, sztring) 'Szelet', 'alma\nkörte', "that's it" Többsoros karakterlánc '''A többsoros szövegeket három idéz jel (" vagy ') határolja.''' Metódusok: split, splitlines, upper, center, rjusti, format... M veletek: + 'AREK '*3 # AREK AREK AREK

Karakterláncok format metódusa (haladó) '{0}+{1}+{0}'.format(5, 125) # 5+125+5 '{}-{}'.format(20, 125457) # 20-125457 '{darab} db {aru}: {ar} Ft'.format( aru='kapa', darab=7, ar=1200) # 7 db kapa: 1200 Ft

Listák (list) Bármilyen típusú lehetnek l = [1, 'alma', 2+3j, [5, 4]]

Listák (list) Bármilyen típusú lehetnek l = [1, 'alma', 2+3j, [5, 4]] Módosíthatjuk: hozzáf zhetünk, beszúrhatunk és törölhetünk bel le elemeket

Listák (list) Bármilyen típusú lehetnek l = [1, 'alma', 2+3j, [5, 4]] Módosíthatjuk: hozzáf zhetünk, beszúrhatunk és törölhetünk bel le elemeket Metódusai: append, insert, count, pop...

Listák (list) Bármilyen típusú lehetnek l = [1, 'alma', 2+3j, [5, 4]] Módosíthatjuk: hozzáf zhetünk, beszúrhatunk és törölhetünk bel le elemeket Metódusai: append, insert, count, pop... Példák: lista = ['alma', 'egres', 'alma', 'barack'] lista.append('dió') lista.count('alma') # 2

Rendezett sorozatok (tuple) Listához hasonló, de nem módosítható

Rendezett sorozatok (tuple) Listához hasonló, de nem módosítható t = (1, 'AREK', [1,2])

Rendezett sorozatok (tuple) Listához hasonló, de nem módosítható t = (1, 'AREK', [1,2]) Példák értékadásra: (a, b, c) = (1, 2, 3) print(a) # 1 a, b, c = 1, 2, 3 # Ugyanaz a,b,c = 'Ede' print(a) # 'E' a, b = a+b, a # Nem kell segédváltozó.

Sorozattípusok közös jellemz i Sorozattípusok: karakterlánc, lista, tuple...

Sorozattípusok közös jellemz i Sorozattípusok: karakterlánc, lista, tuple... Ezeknél m ködik az indexelés és szeletelés.

Sorozattípusok közös jellemz i Sorozattípusok: karakterlánc, lista, tuple... Ezeknél m ködik az indexelés és szeletelés. 0. elemmel kezdünk. (ahogy C-ben, de MATLAB-ban 1-t l)

Sorozattípusok közös jellemz i Sorozattípusok: karakterlánc, lista, tuple... Ezeknél m ködik az indexelés és szeletelés. 0. elemmel kezdünk. (ahogy C-ben, de MATLAB-ban 1-t l) s = 'Szelet'

Sorozattípusok közös jellemz i Sorozattípusok: karakterlánc, lista, tuple... Ezeknél m ködik az indexelés és szeletelés. 0. elemmel kezdünk. (ahogy C-ben, de MATLAB-ban 1-t l) s = 'Szelet' Példák: s[0], s[2:4], s[:3] = s[0:3], s[-2:] = s[-2:6], s[2:-2]

Sorozattípusok közös jellemz i Sorozattípusok: karakterlánc, lista, tuple... Ezeknél m ködik az indexelés és szeletelés. 0. elemmel kezdünk. (ahogy C-ben, de MATLAB-ban 1-t l) s = 'Szelet' Példák: s[0], s[2:4], s[:3] = s[0:3], s[-2:] = s[-2:6], s[2:-2] A fels határ nincs bent sohasem: 2:5 = 2, 3, 4.

Sorozattípusok közös jellemz i Sorozattípusok: karakterlánc, lista, tuple... Ezeknél m ködik az indexelés és szeletelés. 0. elemmel kezdünk. (ahogy C-ben, de MATLAB-ban 1-t l) s = 'Szelet' Példák: s[0], s[2:4], s[:3] = s[0:3], s[-2:] = s[-2:6], s[2:-2] A fels határ nincs bent sohasem: 2:5 = 2, 3, 4. Használható a len() (hossz) függvény rájuk. len('szelet') == 6

Sorozattípusok közös jellemz i Sorozattípusok: karakterlánc, lista, tuple... Ezeknél m ködik az indexelés és szeletelés. 0. elemmel kezdünk. (ahogy C-ben, de MATLAB-ban 1-t l) s = 'Szelet' Példák: s[0], s[2:4], s[:3] = s[0:3], s[-2:] = s[-2:6], s[2:-2] A fels határ nincs bent sohasem: 2:5 = 2, 3, 4. Használható a len() (hossz) függvény rájuk. len('szelet') == 6 Használható a max() és min() függvény rájuk, számoknál sum()

Sorozattípusok közös jellemz i Sorozattípusok: karakterlánc, lista, tuple... Ezeknél m ködik az indexelés és szeletelés. 0. elemmel kezdünk. (ahogy C-ben, de MATLAB-ban 1-t l) s = 'Szelet' Példák: s[0], s[2:4], s[:3] = s[0:3], s[-2:] = s[-2:6], s[2:-2] A fels határ nincs bent sohasem: 2:5 = 2, 3, 4. Használható a len() (hossz) függvény rájuk. len('szelet') == 6 Használható a max() és min() függvény rájuk, számoknál sum() Benne van-e elem: 1 in (1,4,2) # True

Függvények és hívásuk Függvények jellemz i: argumentumaik lehetnek (zárójelben felsorolva, vessz vel elválasztva) csinálhatnak valamit (print kiír képerny re) visszatérnek valamilyen értékkel (esetleg None-nal) Függvények hívása: kulcsszavas argumentumok (többi után) print(1, 3, 'alma', sep=':', end='\n\n') alapértelmezett értékek (sep=' ', end='\n'), ha nem adom meg, azt használja

Szótárak (dict) (haladó) Egy kulcs azonosít egy elemet.

Szótárak (dict) (haladó) Egy kulcs azonosít egy elemet. Példák: d = { 1: 'alma', (18.4, 47.2): 'Fehérvár', 'alak': 'téglalap' } print(d['alak']) # téglalap print(d.keys()) # [1, (18.4, 47.2), 'alak'] d[1j] = 'komplex' # Új elem beillesztése for key in d: print(key, d[key])

Szótárak (dict) (haladó) Egy kulcs azonosít egy elemet. Példák: d = { 1: 'alma', (18.4, 47.2): 'Fehérvár', 'alak': 'téglalap' } print(d['alak']) # téglalap print(d.keys()) # [1, (18.4, 47.2), 'alak'] d[1j] = 'komplex' # Új elem beillesztése for key in d: print(key, d[key]) Csak nem-módosítható elem lehet kulcs.

Logikai (bool) Értéke lehet True és False.

Logikai (bool) Értéke lehet True és False. Vizsgálatnál hamis érték ek (a nullák és az üresek): 0 0.0 0+0j [] () '' {}

Logikai (bool) Értéke lehet True és False. Vizsgálatnál hamis érték ek (a nullák és az üresek): 0 0.0 0+0j [] () '' {} Példák: s = 'alma' # Értékadás, nem vizsgálat 2 < len(s) < 10 # True s == s.lower() and s!= 'apple' # True not 3 == 4 # True 'a' in s # True s is None # False s.endswith('ma') # True isinstance(s, str) # True

Adattípusok egymásba alakítása int(5.2) # csonkol int('2013') float(3) # 3.0 == 3. float('3.14') int('3.14') # hibás bool(0) # False tuple([1, 3, 5]) 2.5*array([1,5,3]) # numpy (pylab) sorvektorrá

Adattípusok összefoglalása megváltoztatható (mutable) nem az (immutable) list set dict int,oat,complex str tuple frozenset bool A jobboldaliak lehetnek szótárak indexei.

Vázlat 1 A Python adatszerkezetei A Python vezérlési szerkezetei 2 Modulok kezelése Példák modulokra

A Python vezérlési szerkezetei if while for def class try

A Python vezérlési szerkezetei if while for def class try Vázlatosan: szerkezet eleje: els utasítás második utasítás harmadik utasítás ez már nincs benne

A Python vezérlési szerkezetei if while for def class try Vázlatosan: szerkezet eleje: els utasítás második utasítás harmadik utasítás ez már nincs benne Fontos a : és a behúzások.

Feltételes elágazás Pythonban D = b**2-4*a*c if D < 0: print("nincs valós gyök.") elif D == 0: print("kett s (valós) gyök van.") else: print("két eltér valós gyök van.")

Függvények Pythonban from math import sqrt def masodfoku(a, b, c): D = b**2-4*a*c if D < 0: print("nincs valós gyök.") return elif D == 0: print("kett s (valós) gyök van.") else: print("két eltér valós gyök van.") x1 = (-b + sqrt(d)) / 2*a x2 = (-b - sqrt(d)) / 2*a return x1, x2

for ciklus Pythonban Python példa; fontos a : és a behúzások: szoveg = 'alma' for karakter in szoveg: print karakter print karakter.upper()

for ciklus Pythonban Python példa; fontos a : és a behúzások: szoveg = 'alma' for karakter in szoveg: print karakter print karakter.upper() Általános alakja: for <változó> in <sorozat>: <parancsok egyformán behúzva> <parancs, ami már nincs a ciklusban>

for ciklus Pythonban Python példa; fontos a : és a behúzások: szoveg = 'alma' for karakter in szoveg: print karakter print karakter.upper() Általános alakja: for <változó> in <sorozat>: <parancsok egyformán behúzva> <parancs, ami már nincs a ciklusban> A sorozat lehet például lista vagy tuple, ekkor az elemeiken megy végig a ciklus, de lehet karakterlánc is, akkor a karakterein.

for ciklus Pythonban range Gyakran használjuk for-ral a range(n) függvényt.

for ciklus Pythonban range Gyakran használjuk for-ral a range(n) függvényt. range([start,] stop[, step])

for ciklus Pythonban range Gyakran használjuk for-ral a range(n) függvényt. range([start,] stop[, step]) Listává alakítva:

for ciklus Pythonban range Gyakran használjuk for-ral a range(n) függvényt. range([start,] stop[, step]) Listává alakítva: range(5) ==> [0, 1, 2, 3, 4]

for ciklus Pythonban range Gyakran használjuk for-ral a range(n) függvényt. range([start,] stop[, step]) Listává alakítva: range(5) ==> [0, 1, 2, 3, 4] range(2, 5) ==> [2, 3, 4]

for ciklus Pythonban range Gyakran használjuk for-ral a range(n) függvényt. range([start,] stop[, step]) Listává alakítva: range(5) ==> [0, 1, 2, 3, 4] range(2, 5) ==> [2, 3, 4] range(2, 8, 3) ==> [2, 5]

Ciklus és számtípusok példa for i in [1, 1.03, 1j, 5]: print i, i**100 Eredmény: 1 1 1.03 19.2186319809 1j (1+0j) 5 78886090522101180541172856528278622967320643510902300

Listaértelmezés [2**i for i in range(1, 6)] # --> [2, 4, 8, 16, 32] word_list = ["alma", "körte", "banán"] [word.upper() for word in word_list] # --> ["ALMA", "KÖRTE", "BANÁN"] [ (i, j) for i in range(7) for j in range(2, i) if i + j < 8 ] # --> [(3, 2), (4, 2), (4, 3), (5, 2)]

while ciklus Pythonban def Euklidesz(a, b): " Visszaadja a legnagyobb közös osztót." if a < b: a, b = b, a while b!= 0: print('{0:5} {1:5}'.format(a, b)) a, b = b, a % b return a lnko = Euklidesz(19*5*5*3*2, 11*7*5*3*2) print("a legnagyobb közös osztó:", lnko) # --> 5*3*2 = 30

while ciklus Pythonban Eredmény: 2850 2310 2310 540 540 150 150 90 90 60 60 30 A legnagyobb közös osztó: 30

Python 3-as verzió Nem teljesen kompatibilis a 2-essel. Pár elavult dolgot helyreraktak. Függvény lett a print: print(1, 'alma', sep=':', le=f) range nem hoz létre listát. for-ban ugyanúgy használható, ha lista kell list(range(10000)) Küls modulok nem mind léteznek még 3-ashoz. Alapból utf-8 kódolás (nem kell megadni). Ékezetes sztringek könnyebb kezelése. Általában python3 utasítással indíthatjuk, ha telepítve van. Pár dolog python2 újabb változataiban is használható: from future import division # 1/2 = 0.5 from future import print_function

Vázlat Modulok kezelése Példák modulokra 1 A Python adatszerkezetei A Python vezérlési szerkezetei 2 Modulok kezelése Példák modulokra

Vázlat Modulok kezelése Példák modulokra 1 A Python adatszerkezetei A Python vezérlési szerkezetei 2 Modulok kezelése Példák modulokra

Saját modulok (haladó) Modulok kezelése Példák modulokra pi = 3.14 smodul.py def negyzet(a): return a*a if name == ' main ': print(negyzet(5)) Hogyan használhatom modulként? Mi fut le importáláskor? Figyeljük meg, hány aláhúzás van?

Saját modulok (haladó) Modulok kezelése Példák modulokra pi = 3.14 smodul.py def negyzet(a): return a*a if name == ' main ': print(negyzet(5)) modulhivo.py import smodul print(smodul.pi) print(smodul.negyzet(5)) from smodul import pi print(pi)

Almodulok Modulok kezelése Példák modulokra A modulok gyakran almodulokat is tartalmazhatnak.

Almodulok Modulok kezelése Példák modulokra A modulok gyakran almodulokat is tartalmazhatnak. Például az os modul path almoduljában vannak az útvonalak összerakásával, szétszedésével kapcsolatos függvények.

Almodulok Modulok kezelése Példák modulokra A modulok gyakran almodulokat is tartalmazhatnak. Például az os modul path almoduljában vannak az útvonalak összerakásával, szétszedésével kapcsolatos függvények. Példák: import os os.path.join('python', 'nx', 'xx.py') python/nx/xx.py (Un*x), python\nx\xx.py (Windows) from os import path path.join('python', 'nx', 'xx.py') from os.path import join from os.path import * join('python', 'nx', 'xx.py')

Almodulok Modulok kezelése Példák modulokra A modulok gyakran almodulokat is tartalmazhatnak. Például az os modul path almoduljában vannak az útvonalak összerakásával, szétszedésével kapcsolatos függvények. Példák: import os os.path.join('python', 'nx', 'xx.py') python/nx/xx.py (Un*x), python\nx\xx.py (Windows) from os import path path.join('python', 'nx', 'xx.py') from os.path import join from os.path import * join('python', 'nx', 'xx.py')

Almodulok Modulok kezelése Példák modulokra A modulok gyakran almodulokat is tartalmazhatnak. Például az os modul path almoduljában vannak az útvonalak összerakásával, szétszedésével kapcsolatos függvények. Példák: import os os.path.join('python', 'nx', 'xx.py') python/nx/xx.py (Un*x), python\nx\xx.py (Windows) from os import path path.join('python', 'nx', 'xx.py') from os.path import join from os.path import * join('python', 'nx', 'xx.py')

Almodulok Modulok kezelése Példák modulokra A modulok gyakran almodulokat is tartalmazhatnak. Például az os modul path almoduljában vannak az útvonalak összerakásával, szétszedésével kapcsolatos függvények. Példák: import os os.path.join('python', 'nx', 'xx.py') python/nx/xx.py (Un*x), python\nx\xx.py (Windows) from os import path path.join('python', 'nx', 'xx.py') from os.path import join from os.path import * join('python', 'nx', 'xx.py')

Almodulok Modulok kezelése Példák modulokra A modulok gyakran almodulokat is tartalmazhatnak. Például az os modul path almoduljában vannak az útvonalak összerakásával, szétszedésével kapcsolatos függvények. Példák: import os os.path.join('python', 'nx', 'xx.py') python/nx/xx.py (Un*x), python\nx\xx.py (Windows) from os import path path.join('python', 'nx', 'xx.py') from os.path import join from os.path import * join('python', 'nx', 'xx.py')

Almodulok Modulok kezelése Példák modulokra A modulok gyakran almodulokat is tartalmazhatnak. Például az os modul path almoduljában vannak az útvonalak összerakásával, szétszedésével kapcsolatos függvények. Példák: import os os.path.join('python', 'nx', 'xx.py') python/nx/xx.py (Un*x), python\nx\xx.py (Windows) from os import path path.join('python', 'nx', 'xx.py') from os.path import join from os.path import * join('python', 'nx', 'xx.py')

Vázlat Modulok kezelése Példák modulokra 1 A Python adatszerkezetei A Python vezérlési szerkezetei 2 Modulok kezelése Példák modulokra

Modulok kezelése Példák modulokra Standard könyvtár B vebben http://docs.python.org The Python Standard Library os: az operációs rendszerrel kapcsolatos dolgokban segít (fájlmásolás, link létrehozása, parancs végrehajtása) sys: a Python m ködésével kapcsolatos modul (elérési útvonal, argumentumok kezelése) urllib: a weboldalak eléréséhez. re: reguláris kifejezések kezeléséhez random: véletlen számok (egyenletes vagy normáis eloszlású véletlen szám, visszatevés nélküli mintavétel listából) subprocess: alfolyamatok kezelése xml: XML-el kapcsolatos modul cgi, cgitb: CGI-szkripteléssel kapcsolatos modulok gettext: programok embernyelvi fordításához (en, hu, de) unittest, doctest: programok teszteléséhez

Küls modulok Modulok kezelése Példák modulokra numpy: mátrixm veletek, lineáris egyenletek pylab ( matplotlib): a MATLAB-hoz hasonló stílusú számítások, függvényrajzolás, numpy-t használja scipy: széls értékkezelés, numerikus integrálás igraph: gráfok kezelése és kirajzolása, gyors, kirajzoláshoz nem kell matplotlib cxnet: az igraphra épül gráfelemz NetworkX: gráfok kezelése, kirajzolása matplotlibbel django: web-keretrendszer Pillow: Python Image Library utóda, képek feldolgozása, adataik kinyerése pandas: adatanalízis

Pylab Modulok kezelése Példák modulokra from pylab import * x = linspace(-pi, pi, 1024) y = 0 for i in range(1,16,2): # 1, 3,... 15 y += sin(i*x)/i plot(x,4/pi*y) title('négyszögjel Fourier-sora 15 tag') savefig('fourier15.png') show()

Adatbázis: DB API 2.0 (haladó) Modulok kezelése Példák modulokra import pgdb # lehet itt MySQLdb, oracledb... connection = pgdb.connect(database='hp', user='diak', password='diak', dsn='db.arek.uni-obuda.hu') cursor = connection.cursor() # Itt lehet az utasítást megadni: cursor.execute("select * FROM adatok;") # Adatbázis módosításkor kell: connection.commit() eredmeny = cursor.fetchall() print(*eredmeny, sep=", ")

CGI (haladó) Modulok kezelése Példák modulokra import cgi import cgitb; cgitb.enable() # A hibafigyeléshez form = cgi.fieldstorage() # CGI-ként a kapott értékek if form.has_key('title'): title = form.getvalue('title') else: title = "CGI-oldal" print "Content-Type: text/html\n" ## CGI print "<html><body>" # és így tovább.

django Modulok kezelése Példák modulokra Az SQL-utasításokat és a CGI-t kiválthatjuk a django web-keretrendszerrel. http://djangoproject.com

Django Modulok kezelése Példák modulokra Django web-keretrendszer Webserver Apache fejlesztésnél saját Adatbázis PostgreSQL fejlesztésénél SQLight