Python za programere - Alex Martelli, Anna Martelli Ravenscroft, Steve Holden, Paula McGuire
Python za programere - Alex Martelli, Anna Martelli Ravenscroft, Steve Holden, Paula McGuire
Share
Python za programere - Sveobuhvatan referentan priručnik - Alex Martelli, Anna Martelli Ravenscroft, Steve Holden, Paula McGuire
Opis
Python je nedavno rangiran kao najpopularniji programski jezik današnjice prema TIOBE indeksu, posebno zahvaljujući njegovoj širokoj primenjivosti u dizajnu, prototipiranju, testiranju, implementaciji i održavanju. Sa ovim ažuriranim četvrtim izdanjem, naučićete kako da izvučete maksimum iz Pythona, bez obzira da li ste profesionalni programer ili neko ko ovaj jezik koristi za rešavanje problema u određenoj oblasti.
Pažljivo napisano od strane priznatih eksperata za Python, novo izdanje se fokusira na verziju 3.10, donoseći ovo važno delo o Python jeziku potpuno ažurirano na pet verzija, uključujući pokrivenost nedavno objavljene Python 3.11.
Iz predgovora
Programski jezik Python miri mnoge očigledne kontradikcije: elegantan ali pragmatičan, jednostavan ali moćan, veoma je visokog nivoa, ali vas ne ometa kada treba da bavite sa bitovima i bajtovima. Pogodan je za programere početnike, ali i odličan za stručnjake.
Ova knjiga je namenjena programerima koji su prethodno bili upoznati sa Pythonom, kao i iskusnim programerima koji prvi put dolaze na Python sa drugih jezika. Pruža brzu referencu na sam Python, najčešće korišćene delove njegove ogromne standardne biblioteke i nekoliko najpopularnijih i korisnih modula i paketa nezavisnih proizvođača. Python ekosistem je toliko porastao u bogatstvu, obimu i složenosti da se više ne može očekivati da će jedna knjiga biti enciklopedijska. Ipak, knjiga pokriva širok spektar oblasti primene, uključujući veb i mrežno programiranje, rukovanje XML-om, interakcije baze podataka i brzo numeričko računarstvo. Takođe istražuje Pythonove višeplatformske mogućnosti i osnove proširenja Pythona i njegovog ugrađivanja u druge aplikacije.
Ovaj praktičan vodič će vam pomoći da:
• Naučite kako Python predstavlja podatke i programe kao objekte.
• Razumete vrednost i upotrebu označavanja tipova (type annotations).
• Istražite koje funkcionalnosti jezika su se pojavile u nedavnim verzijama.
• Otkrijete kako koristiti savremen Python na idiomatičan način.
• Naučite kako pravilno da strukturišete Python projekte.
• Razumete kako testirati, otklanjati greške i optimizovati Python kôd.
Autori su četiri PSF Fellows, od kojih su troje dobitnici nagrade Frank Willison, priznate za brojne doprinose Pythonu i njegovoj zajednici. Njihovo kolektivno iskustvo obuhvata različita okruženja i platforme, od akademskih preko startapa do korporativnih i vladinih.
Zajedno su sastavili autoritativan referentan materijal za sintaksu i funkcionalnosti Python jezika, standardnu biblioteku Pythona i odabrane pakete trećih strana.
Sadržaj
Predgovor, ix
1. Uvod u Python, 1
Jezik Python, 1
Python standardna biblioteka i moduli proširenja, 2
Python implementacije, 3
Python razvoj i verzije, 10
Python resursi, 11
Instalacija, 15
Instaliranje Pythona iz binarnih datoteka, 16
Instaliranje Pythona iz izvornog koda 17
2. Python interpreter, 21
Program python, 21
Python razvojna okruženja, 27
Izvršavanje Python programa, 29
Izvršavanje Pythona u veb čitaču 30
3. Jezik Python, 33
Leksička struktura, 33
Tipovi podataka, 40
Promenljive i druge reference, 52
Izrazi i operatori, 56
Numeričke operacije, 60
Operacije nad nizovima, 62
Operacije nad skupovima, 68
Operacije nad rečnikom, 70
Naredbe toka kontrole, 72
Funkcije 91
4. Objektno orijentisan Python, 113
Klase i instance, 113
Specijalne metode, 139
Dekoratori, 152
Metaklase 153
5. Anotacije tipa, 165
Razvoj, 165
Uslužni programi za proveru tipa, 167
Sintaksa anotacije tipa, 168
Modul typing, 170
Korišćenje anotacija tipa tokom izvršavanja, 184
Kako dodati anotacije tipa svom kodu, 185
Rezime 187
6. Izuzeci, 189
Naredba try, 189
Naredba raise, 194
Naredba with i menadžer konteksta, 195
Generatori i izuzeci, 197
Propagacija izuzetaka, 198
Objekti izuzetaka, 199
Prilagođene klase izuzetaka, 204
ExceptionGroup i except*, 206
Strategije provere grešaka, 207
Naredba assert 212
7. Moduli i paketi, 215
Objekti modula, 216
Učitavanje modula, 221
Paketi, 227
Distribucioni pomoćni programi (distutils) i setuptools, 228
Python okruženja 230
8. Ugrađeni moduli jezgra i moduli standardne biblioteke, 239
Ugrađeni tipovi, 240
Ugrađene funkcije, 243
Modul sys, 249
Modul copy, 252
Modul collections, 253
Modul functools, 258
Modul heapq, 260
Modul argparse, 262
Modul itertools 264
9. Stringovi i ostalo, 269
Metode string objekata, 269
Modul string, 273
Formatiranje stringa 273
Prelamanje i popunjavanje teksta, 286
Modul pprint, 286
Modul reprlib, 287
Unicode 287
10. Regularni izrazi, 289
Regularni izrazi i re modul, 289
Opcione zastavice, 295
Podudaranje naspram pretrage, 296
Sidrenje na početku i kraju stringa, 297
Objekti regularnog izraza, 297
Podudaranje objekata, 300
Funkcije modula re, 301
RE i operator :=, 302
Regex modul treće strane 303
11. Operacije sa datotekama i tekstom, 305
Modul io, 306
Modul tempfile, 312
Pomoćni moduli za ulaz/izlaz datoteka, 313
Datoteke u memoriji: io.StringIO i io.BytesIO, 317
Arhivirane i komprimovane datoteke, 318
Modul os, 325
Modul errno, 336
Modul pathlib, 336
Modul stat, 340
Modul filecmp, 341
Modul fnmatch, 343
Modul glob, 344
Modul shutil, 344
Unos i izlaz teksta, 346
Ulaz/Izlaz teksta sa bogatijim formatiranjem, 348
Internacionalizacija 351
12. Postojanost i baze podataka, 359
Serijalizacija, 360
Moduli DBM, 371
API Python baze podataka (DBAPI) 373
13. Vremenske operacije, 383
Modul time, 383
Modul datetime, 387
Modul zoneinfo, 393
Modul dateutil 395
Modul sched, 395
Modul calendar 397
14. Prilagođavanje izvršavanja, 399
Prilagođavanje po lokaciji, 399
Funkcije završetka, 400
Dinamičko izvršavanje i exec, 400
Interni tipovi, 404
Sakupljanje otpada 405
15. Uporednost: niti i procesi, 411
Niti u Pythonu, 413
Modul threading, 414
Modul queue, 423
Modul multiprocessing, 425
Modul concurrent.futures, 434
Arhitektura programske niti, 436
Procesno okruženje, 440
Pokretanje drugih programa, 441
Modul mmap 445
16. Numerička obrada, 451
Vrednosti sa pokretnim zarezom, 451
Moduli math i cmath, 454
Modul statistics, 457
Modul operator, 458
Nasumični i pseudonasumični brojevi, 460
Modul fractions, 463
Modul decimal, 464
Obrada niza 466
17. Testiranje, otklanjanje grešaka i optimizacija, 475
Testiranje, 476
Otklanjanje grešaka, 489
Modul warnings, 498
Optimizacija 501
18. Osnove umrežavanja, 523
Interfejs utičnice Berkeley, 524
Bezbednost transportnog sloja, 537
SSLContext 538
19. Moduli mrežnog protokola na strani klijenta, 541
Protokoli e-pošte, 541
HTTP i URL klijenti, 544
Drugi mrežni protokoli 551
20. Uslužni HTTP, 553
http.server, 554
WSGI, 554
Python veb okvir 555
21. E-pošta, MIME i druga mrežna kodiranja, 567
Upravljanje MIME i formatom e-pošte, 567
Kodiranje binarnih podataka kao ASCII teksta 574
22. Strukturisan tekst: HTML, 579
Modul html.entities, 580
Paket treće strane BeautifulSoup, 580
Generisanje HTML-a 591
23. Strukturisan tekst: XML, 597
ElementTree, 598
Parsiranje XML-a pomoću ElementTree.parse, 603
Izgradnja strukture ElementTree od nule, 605
Iterativno raščlanjivanje XML-a 605
24. Programi za pakovanje i proširenja, 609
Šta ne pokrivamo u ovom poglavlju, 610
Kratka istorija Python pakovanja, 611
Onlajn materijal 612
25. Proširivanje i ugradnja klasičnog Pythona, 613
Onlajn materijal 614
26. Migracija sa v3.7 na v3.n, 615
Značajne promene u Pythonu do 3.11, 615
Planiranje nadogradnje Python verzije, 617
Rezime 620
Dodatak Nove funkcije i promene u Pythonu od 3.7 do 3.11, ,621
Indeks, 637
O autorima
Aleks Martelli programira već 40 godina, od toga poslednjih 20 godina prvenstveno u Pythonu. Napisao je prva dva izdanja Pythona za programere, i koautor prva dva izdanja Python Cookbook i trećeg izdanja Python za programere. Član je PSF-a i glavni član (emeritus), a osvojio je 2002. Activators’ Choice Award a 2006. Frank Willison Memorial Award za doprinos Python zajednici. Aktivan je na Stack Overflowu i čest je govornik na tehničkim konferencijama. Živi u Silicijumskoj dolini sa suprugom Anom već 17 godina i sve to vreme radi u Googleu, trenutno kao viši inženjer za tehničku podršku za Google Cloud.
Anna Martelli Ravenscroft je stipendista PSF-a i dobitnik Memorijalne nagrade Frenka Wilisona za 2013. za doprinos Python zajednici. Koautor je drugog izdanja Python Cookbook i trećeg izdanja Python za programere. Bila je tehnički recenzent za mnoge knjige o Pythonu i redovni je govornik i predsedavajući na tehničkim konferencijama. Ana živi u Silikonskoj dolini sa suprugom Aleksom, dva psa, jednom mačkom i nekoliko pilića.
Strastven za programiranje i zajednicu, Steve Holden radi sa računarima od 1967. i počeo je da koristi Python u verziji 1.4 1995. Od tada je pisao o Pythonu, kreirao obuku predvođenu instruktorima, koju je držao međunarodnoj publici, i napravio 40 sati video uputstva za „nevoljne Python korisnike“. Kao emeritus Fondacije za softver Python, Steve je bio direktor Fondacije osam godina i kao njen predsednik tri godine; stvorio je PyCon, seriju međunarodnih konferencija zajednice Pythona, i dobio je Memorijalnu nagradu Franka Wilisona 2007. za usluge Python zajednici. Živi u Hastingsu, Engleska, i radi kao tehnički arhitekta za Odeljenje za međunarodnu trgovinu Ujedinjenog Kraljevstva, gde je odgovoran za sisteme koji održavaju i regulišu trgovinsko okruženje.
Paul McGuire se bavi programiranjem više od 40 godina, na jezicima u rasponu od FORTRAN-a do Pascal, PL/I, COBOL-a, Smalltalka, Jave, C/C++/C# i Tcl-a, odlučivši se 2001. za Python kao svoj izborni jezik. On je član PSF-a, i autor je i održava popularni pyparsing modul, kao i littletable i plusminus. Pol je autor O’Reillyjeve knjige Getting Started with Pyparsing, i napisao je i uređivao članke za Python Magazine. Takođe je govorio na PyCon, PyTekas i u Austin Python User’s Group, a aktivan je i na StackOverflowu. Pol sada živi u Ostinu, Teksas, sa suprugom i psom, i radi za Indeed kao inženjer za pouzdanost sajta, pomažući ljudima da se zaposle!
Informatika Mikro Knjiga Nakladnici Programiranje Sve knjige
Česta pitanja
Koji su Načini plaćanja?
Koji su Načini plaćanja?
- Kreditnom ili debitnom karticom
- Pouzećem – plaćanje po primitku paketa direktno djelatniku pošte
- Virmanom (uplata na žiro račun) -plaćanje Internet bankarstvom, uplatnicom u pošti, banci
Koliki su troškovi poštarine i koji je rok isporuke?
Koliki su troškovi poštarine i koji je rok isporuke?
Iznos narudžbe (vrijednost košarice) i troškovi slanja na adrese u Republici Hrvatskoj
Do 150,00 € -> 7,00 €
Iznad 150,00 € -> Gratis
Iznos narudžbe (vrijednost košarice) i troškovi slanja u inozemstvo
Do 26,54 € -> 20,97 €
Za svakih slijedećih 26,54 € vrijednosti košarice (do maksimalne vrijednosti košarice 132,72 €) dodaje se 5,30 €
Od 132,72 € vrijednosti košarice nadalje trošak dostave iznosi 46,18 €
Rok isporuke je od 14 do 30 radnih dana (u radne dane ne spadaju vikendi, blagdani i državni praznici).
U slučaju nepredviđene situacije, rok dostave može se produljiti, ali o tome ćete biti naknadno obaviješteni (mailom ili telefonski).
Da li je moguće osobno preuzimanje naručenih knjiga na adresi?
Da li je moguće osobno preuzimanje naručenih knjiga na adresi?
Kada su knjige dostupne, moguće je osobno preuzimanje knjiga na adresi ureda Ivane Brlić Mažuranić 72 (Malešnica), 10090 Zagreb uz obaveznu prethodnu najavu na telefon 00385 (0)1 3731 748.
Trebate pomoć oko kupovine putem naše internet stranice www.strucnaknjizara.com?
Trebate pomoć oko kupovine putem naše internet stranice www.strucnaknjizara.com?
Slobodno nas kontaktirajte putem naše e-mail adrese: info@strucnaknjizara.com ili telefonski na broj: 00385 (0)1 3731 748.
Ako se ne snalazite ili ne želite naručiti knjige preko internet trgovine, slobodno nam pošaljite direktan upit/narudžbu na e-mail na info@strucnaknjizara.com.
Za narudžbu su potrebni sljedeći podaci:
Točan naslov željene knjige i količina,
ime i prezime,
adresa dostave,
e-mail adresa i
telefonski broj.
Tražite stručnu knjigu i ne možete da ju pronađete?
Javite nam, potrudit ćemo se da je pronađemo za Vas.
Newsletter prijava
...prijavi se na listu i prati akcije