Ta strona wykorzystuje pliki cookies. Korzystając ze strony, zgadzasz się na ich użycie. OK Polityka Prywatności Zaakceptuj i zamknij X

Python. Od podstaw, Zespół autorów [nowa]

13-03-2012, 11:40
Aukcja w czasie sprawdzania nie była zakończona.
Cena kup teraz: 74.50 zł     
Użytkownik infmaster
numer aukcji: 2119062407
Miejscowość Warszawa
Zostało sztuk: 3    Wyświetleń: 12   
Koniec: 14-03-2012 14:07:51
info Niektóre dane mogą być zasłonięte. Żeby je odsłonić przepisz token po prawej stronie. captcha

Książka jest NOWA,
w stanie IDEALNYM.

Niezależnie od ilości zakupionych książek płacisz tylko jednorazowy koszt wysyłki.

Python. Od podstaw

Python. Od podstaw

Wydawnictwo: Helion



Dołącz do społeczności programistów Pythona!

  • Poznaj elementy języka
  • Zaprojektuj interfejsy użytkownika
  • Stwórz własne aplikacje sieciowe

Python to jeden z najszybciej rozwijających się języków programowania. Jest dostępny na licencji open source i posiada elastyczną, czytelną składnię. Jego możliwości pozwalają programistom na tworzenie aplikacji sieciowych, komunikację z bazami danych i zarządzanie systemami operacyjnymi. Python jest językiem wieloplatformowym, dzięki czemu napisane w nim programy można uruchamiać w różnych środowiskach i pod kontrolą różnych systemów operacyjnych. Ogromne możliwości tego języka zainspirowały duże grono entuzjastów aktywnie dzielących się wiedzą na jego temat na różnego rodzaju forach i listach dyskusyjnych. Gwarantuje to, że żadne zadane im pytanie dotyczące Pythona nie pozostanie bez odpowiedzi.

Książka "Python. Od podstaw" to podręcznik dla tych, którzy chcą opanować ten język i tworzyć w nim własne aplikacje. Dzięki niej poznasz wszystkie elementy Pythona i dowiesz się, na czym polega programowanie obiektowe. Nauczysz się przetwarzać dane tekstowe i liczbowe, tworzyć graficzne interfejsy użytkownika za pomocą GTK oraz łączyć aplikacje z bazami danych. Poznasz zasady korzystania z plików XML, pisania aplikacji internetowych i integrowania Pythona z usługami sieciowymi oraz innymi językami programowania.

Oto niektóre z zagadnień poruszanych w tej książce:
  • operacje na liczbach i ciągach znaków,
  • konstrukcje sterujące,
  • funkcje i moduły,
  • programowanie obiektowe,
  • operacje na plikach i folderach,
  • połączenia z bazami danych,
  • przetwarzanie plików XML,
  • obsługa serwerów pocztowych,
  • tworzenie własnych rozszerzeń w języku C,
  • aplikacje biznesowe,
  • usługi sieciowe,
  • integracja Pythona i Javy.


Spis treści:

O autorach (15)

Wprowadzenie (17)

Rozdział 1. Podstawy programowania i ciągi znaków (25)

  • Czym różni się programowanie od używania komputera? (25)
    • Programowanie to spójność (26)
    • Programowanie to sterowanie (26)
    • Programowanie podąża za zmianami (27)
    • Co to wszystko oznacza? (27)
  • Pierwsze kroki (27)
    • Uruchamianie edytora codeEditor (28)
    • Wykorzystywanie powłoki Pythona w edytorze codeEditor (28)
  • Zaczynamy korzystać z Pythona - ciągi znaków (29)
    • Czym jest ciąg znaków? (30)
    • Dlaczego cudzysłowy? (30)
    • Stosowanie apostrofów i cudzysłowów (31)
  • Łączenie dwóch ciągów znaków (32)
  • Złączanie ciągów znaków na różne sposoby (33)
  • Wyświetlanie tekstów za pomocą instrukcji print (34)
  • Podsumowanie (35)
  • Ćwiczenia (36)

Rozdział 2. Liczby i operatory (37)

  • Różne rodzaje liczb (37)
    • Liczby w Pythonie (38)
  • Pliki programów (40)
    • Korzystanie z różnych typów (41)
    • Podstawowe działania matematyczne (43)
    • Kilka niespodzianek (45)
  • Wykorzystywanie obliczeń matematycznych (45)
    • Kolejność wykonywania działań (45)
    • Formaty liczb (46)
    • Błędy się zdarzają (47)
    • Pewne nietypowe rozwiązania (48)
  • Podsumowanie (49)
  • Ćwiczenia (50)

Rozdział 3. Zmienne - nazwy dla wartości (51)

  • Przechowywanie danych - wykorzystywanie nazw (51)
    • Zmiana danych za pomocą nazwy zmiennej (52)
    • Kopiowanie danych (53)
    • Nazwy, których nie można używać, i kilka zasad (53)
  • Kolejne wbudowane typy danych (54)
    • Krotki - niezmienne sekwencje danych (54)
    • Listy - modyfikowalne sekwencje danych (57)
    • Słowniki - grupowanie danych z indeksacją na podstawie nazw (59)
    • Traktowanie ciągu znaków jak listy (61)
    • Typy specjalne (62)
  • Inne typowe właściwości sekwencji (63)
    • Dostęp do ostatniego elementu (63)
    • Zakresy sekwencji (63)
    • Rozszerzanie list przez dodawanie kolejnych elementów (64)
    • Wykorzystywanie list do tymczasowego przechowywania danych (65)
  • Podsumowanie (66)
  • Ćwiczenia (66)

Rozdział 4. Podejmowanie decyzji (69)

  • Porównywanie wartości - czy są takie same? (69)
  • Operacja przeciwna - nierówność (71)
  • Porównywanie wartości - która jest większa? (71)
    • Większy lub równy, mniejszy lub równy (73)
  • Negacja prawdy lub fałszu (73)
  • Poszukiwanie wyniku więcej niż jednego porównania (74)
    • Podejmowanie decyzji (75)
  • Powtarzanie (77)
    • Jak wykonywać coś raz za razem? (77)
    • Zatrzymywanie pętli (79)
  • Obsługa błędów (81)
    • Wypróbowywanie kodu (82)
  • Podsumowanie (84)
  • Ćwiczenia (85)

Rozdział 5. Funkcje (87)

  • Umieszczanie programu w osobnym pliku (87)
  • Funkcje - grupowanie kodu pod konkretną nazwą (89)
    • Dobór nazwy (90)
    • Opisywanie funkcji w jej wnętrzu (91)
    • Ta sama nazwa w dwóch różnych miejscach (92)
    • Pozostawianie notatek samemu sobie (93)
    • Przekazywanie wartości do funkcji (94)
    • Sprawdzanie parametrów (96)
    • Ustawianie wartości domyślnej parametru (98)
    • Wywoływanie funkcji wewnątrz innych funkcji (99)
    • Funkcje wewnątrz funkcji (101)
    • Zgłaszanie własnych błędów (102)
  • Warstwy funkcji (103)
    • Sposób analizy błędów w zagnieżdżonych funkcjach (103)
  • Podsumowanie (104)
  • Ćwiczenia (105)

Rozdział 6. Klasy i obiekty (107)

  • Podejścia do programowania (107)
    • Pojęcie obiektu jest powszechnie znane (107)
    • W jaki sposób korzystać z obiektów? (109)
  • Definiowanie klasy (109)
    • W jaki sposób wykonać obiekt? (110)
    • Obiekty i ich zasięg (117)
  • Podsumowanie (120)
  • Ćwiczenia (122)

Rozdział 7. Organizacja programów (123)

  • Moduły (124)
    • Importowanie modułów, z których chce się skorzystać (124)
    • Tworzenie modułu na podstawie istniejącego kodu (125)
    • Korzystanie z modułów - zaczynamy od wiersza poleceń (127)
    • Zmiana sposobu działania importu (129)
  • Pakiety (129)
  • Moduły i pakiety (131)
    • Przeniesienie wszystkiego do aktualnego zasięgu (131)
    • Ponowny import modułów i pakietów (132)
  • Podstawy testowania modułów i pakietów (134)
  • Podsumowanie (135)
  • Ćwiczenia (136)

Rozdział 8. Pliki i foldery (137)

  • Obiekty file (137)
    • Zapis plików tekstowych (138)
    • Odczyt plików tekstowych (139)
    • Wyjątki dotyczące plików (141)
  • Ścieżki i foldery (142)
    • Ścieżki (142)
    • Zawartość folderu (145)
    • Uzyskiwanie informacji o plikach (146)
    • Rekurencyjne wyświetlanie folderów (146)
    • Zmiana nazwy, przenoszenie, kopiowanie i usuwanie plików (148)
    • Przykład - rotacja plików (148)
    • Tworzenie i usuwanie folderów (150)
    • Globbing (150)
  • Serializacja (152)
    • Wskazówki dotyczące serializacji (153)
    • Wydajna serializacja (154)
  • Podsumowanie (154)
  • Ćwiczenia (155)

Rozdział 9. Inne elementy języka Python (157)

  • Lambda i filtry - krótkie funkcje anonimowe (157)
  • Funkcja reduce (158)
  • Funkcja map - krótsza wersja pętli (159)
  • Decyzje wewnątrz list - listy składane (160)
  • Generowanie list dla pętli (161)
  • Zastępowanie ciągów znaków wartościami ze słowników (163)
  • Przydatne modułu (165)
    • Getopt - pobieranie opcji z wiersza poleceń (165)
    • Wykorzystywanie więcej niż jednego procesu (167)
    • Wątki - wiele zadań wykonywanych przez jeden proces (169)
    • Przechowywanie haseł (171)
  • Podsumowanie (172)
  • Ćwiczenia (173)

Rozdział 10. Tworzenie modułu (175)

  • Szczegóły działania modułów (175)
    • Importowanie modułów (177)
    • Znajdowanie modułu (177)
    • Analiza istniejącego modułu (178)
  • Tworzenie modułów i pakietów (181)
  • Stosowanie klas (182)
    • Elementy programowania obiektowego (183)
    • Tworzenie klas (183)
    • Rozszerzanie istniejących klas (185)
  • Wykonywanie pozostałych zadań związanych z modułami (186)
    • Definiowanie błędów specyficznych dla modułu (186)
    • Określanie eksportowanych informacji (187)
    • Dokumentowanie modułu (188)
    • Testowanie modułu (194)
    • Uruchamianie modułu jako programu (195)
  • Tworzenie pełnego modułu (196)
    • Jak to działa? (199)
  • Instalacja własnych modułów (202)
  • Podsumowanie (205)
  • Ćwiczenia (206)

Rozdział 11. Przetwarzanie tekstu (207)

  • Dlaczego przetwarzanie tekstów jest tak istotne? (207)
    • Wyszukiwanie plików (208)
    • Analiza dzienników (209)
    • Przeszukiwanie poczty (210)
  • Poruszanie się po systemie plików za pomocą modułu os (210)
  • Wyrażenia regularne i moduł re (216)
  • Podsumowanie (219)
  • Ćwiczenia (220)

Rozdział 12. Testy (221)

  • Asercje (222)
  • Przypadki testowe i zestawy testowe (223)
  • Osprzęt testowy (227)
  • Łączymy wszystko, wykorzystując metodologię XP (230)
    • Implementacja w Pythonie narzędzia wyszukiwania (231)
    • Bardziej zaawansowany skrypt wyszukujący (236)
  • Testy formalne w cyklu życia oprogramowania (238)
  • Podsumowanie (239)

Rozdział 13. Tworzenie graficznych interfejsów użytkownika (241)

  • Środowiska do tworzenia graficznych interfejsów dostępne w Pythonie (241)
  • Wprowadzenie do pyGTK (243)
  • Zasoby dotyczące pyGTK (243)
  • Tworzenie interfejsów graficznych za pomocą pyGTK (245)
    • Sygnały GUI (247)
    • Wątki pomocnicze GUI i kolejka zdarzeń GUI (248)
    • Pakowanie widgetów (254)
    • Glade - tworzenie interfejsów graficznych dla pyGTK (255)
    • Systemy budowania GUI dla innych szkieletów interfejsów graficznych (256)
  • Wykorzystywanie libglade w Pythonie (256)
  • Krótki przewodnik po Glade (257)
    • Uruchamianie Glade (257)
    • Tworzenie projektu (259)
    • Wykorzystywanie palety do utworzenia okna (259)
    • Umieszczanie widgetów w oknie (260)
    • Glade tworzy plik XML opisujący interfejs graficzny (261)
  • Tworzenie rozbudowanej aplikacji z wykorzystaniem Glade (263)
  • Zaawansowane widgety (269)
  • Dalsza rozbudowa PyRAP (272)
  • Podsumowanie (278)
  • Ćwiczenia (279)

Rozdział 14. Dostęp do baz danych (281)

  • Korzystanie z trwałych słowników DBM (282)
    • Wybór modułu DBM (282)
    • Tworzenie trwałego słownika (283)
    • Dostęp do danych trwałego słownika (285)
    • Kiedy stosować trwały słownik, a kiedy relacyjną bazę danych? (287)
  • Korzystanie z relacyjnych baz danych (288)
    • Instrukcje SQL (289)
    • Definicje tabel (291)
    • Tworzenie bazy danych (292)
  • Stosowanie interfejsu programistycznego baz danych (294)
    • Pobieranie modułów (295)
    • Tworzenie połączeń (296)
    • Korzystanie z kursorów (296)
    • Transakcje - zatwierdzanie i wycofywanie zmian (304)
    • Sprawdzanie możliwości modułu oraz metadane (304)
    • Obsługa błędów (305)
  • Podsumowanie (306)
  • Ćwiczenia (306)

Rozdział 15. Python i XML (309)

  • Czym jest XML? (309)
    • Hierarchiczny język znaczników (309)
    • Rodzina standardów (311)
  • Czym jest Schema i DTD? (312)
    • Do czego używa się modelu dokumentów? (312)
    • Czy model dokumentu jest potrzebny? (312)
  • Dokument DTD (312)
    • Przykład DTD (313)
    • DTD to nie XML (314)
    • Ograniczenia DTD (314)
  • Dokument Schema (314)
    • Przykład dokumentu Schema (315)
    • Schema to standardowy dokument XML (315)
    • Schema jest hierarchiczny (315)
    • Inne zalety Schema (316)
    • Schema jest znacznie rzadziej obsługiwany (316)
  • XPath (316)
  • HTML jako podzbiór języka XML (317)
    • Modele DTD dla języka HTML (317)
    • Moduł i klasa HTMLParser (317)
    • Moduł htmllib (318)
  • Biblioteki XML dostępne w Pythonie (319)
  • Walidacja dokumentu XML w Pythonie (320)
    • Czym jest walidacja? (320)
    • Poprawność formatu a walidacja (320)
    • Dostępne narzędzia (321)
  • Czym jest SAX? (322)
    • Bazujący na strumieniu (323)
    • Sterowany zdarzeniami (323)
  • Czym jest DOM? (323)
    • Dostęp bezpośrednio z pamięci operacyjnej (323)
  • SAX czy DOM? (324)
    • Możliwości (324)
    • Wymagania pamięciowe (324)
    • Szybkość działania (324)
  • Analizatory SAX i DOM dostępne w Pythonie (325)
    • Pakiet PyXML (325)
    • Pakiet xml.sax (325)
    • Pakiet xml.dom.minidom (325)
  • Wprowadzenie do XSTL (328)
    • XSTL to XML (328)
    • Język formatowania i przekształceń (329)
    • Funkcyjny, sterowany szablonami (329)
  • Wykorzystywanie Pythona do przekształceń XML za pomocą XSTL (329)
  • Łączymy wszystko - kanały RSS (331)
    • Wstęp do kanałów RSS (332)
    • Model DTD dla RSS (333)
    • Problem z rzeczywistego świata (333)
    • Kolejny problem z rzeczywistego świata (336)
  • Podsumowanie (338)
  • Ćwiczenia (338)

Rozdział 16. Programowanie sieciowe (341)

  • Protokoły (343)
    • Porównanie protokołów i języków programowania (343)
    • Stos protokołów internetowych (344)
    • Dodatkowe informacje na temat protokołu IP (346)
  • Wysyłanie wiadomości e-mail (347)
    • Format wiadomości e-mail (348)
    • Wiadomości MIME (349)
    • Wysyłanie poczty za pomocą SMTP i smtplib (358)
  • Odczytywanie wiadomości e-mail (360)
    • Przetwarzanie lokalnej skrzynki pocztowej modułem mailbox (360)
    • Pobieranie poczty z serwera POP3 za pomocą modułu poplib (361)
    • Pobieranie poczty z serwera IMAP modułem imaplib (364)
    • Bezpieczne połączenia POP3 i IMAP (368)
    • Aplikacje obsługi poczty przez WWW nie są typowymi klientami poczty (369)
  • Programowanie z wykorzystaniem gniazd (369)
    • Gniazda (369)
    • Dołączanie do zewnętrznych interfejsów (372)
    • Serwer odwracający tekst (372)
    • Klient dla serwera odwracającego tekst (374)
    • Moduł SocketServer (375)
    • Serwery wielowątkowe (377)
    • Serwer pogawędek internetowych (378)
    • Projekt serwera pogawędek (378)
    • Protokół serwera pokoju pogawędek (379)
    • Klient pogawędek (384)
    • Jednowątkowa wielozadaniowość uzyskiwana za pomocą select (386)
  • Inne tematy (388)
    • Rozważania na temat projektowania protokołów (388)
    • Szkielet Twisted (389)
    • Architektura komunikacji równorzędnej (392)
  • Podsumowanie (392)
  • Ćwiczenia (393)

Rozdział 17. Tworzenie rozszerzeń w języku C (395)

  • Ogólna postać modułu rozszerzeń (396)
  • Kompilacja i instalacja modułu rozszerzenia (398)
  • Przekazywanie parametrów z Pythona do C (400)
  • Zwracanie wartości z C do Pythona (403)
  • Projekt LAME (404)
  • Moduł rozszerzenia LAME (408)
  • Używanie obiektów Pythona z poziomu kodu języka C (420)
  • Podsumowanie (423)
  • Ćwiczenia (423)

Rozdział 18. Pisanie programów komercyjnych i shareware (425)

  • Analiza przypadku - tło (426)
  • W jakim stopniu wykorzystywać Pythona? (426)
  • Licencjonowanie kodu napisanego w Pythonie (428)
    • Warto skorzystać z usług internetowych (429)
  • Strategia cen (430)
    • Znaki wodne (430)
    • Inne modele (435)
    • Sprzedaż platformy, a nie produktu (436)
  • Twoje środowisko programistyczne (436)
  • Poszukiwanie programistów języka Python (438)
    • Szkolenie programistów znających inne języki niż Python (438)
    • Doświadczeni programiści Pythona (438)
  • Problemy z Pythonem (438)
    • Tworzenie kodu dla innych wersji Pythona (439)
    • Przejście na inny system operacyjny (440)
    • Debugowanie wątków (441)
    • Typowe pomyłki (441)
  • Przenośna dystrybucja (442)
  • Istotne biblioteki (443)
    • Timeoutsocket (443)
    • PyGTK (444)
    • GEOip (444)
  • Podsumowanie (444)

Rozdział 19. Programowanie numeryczne (445)

  • Liczby w Pythonie (446)
    • Liczby całkowite (446)
    • Długie liczby całkowite (447)
    • Wartości zmiennoprzecinkowe (447)
    • Formatowanie liczb (448)
    • Znaki jako liczby (451)
  • Matematyka (452)
    • Arytmetyka (452)
    • Wbudowane funkcje matematyczne (454)
    • Moduł math (455)
  • Liczby zespolone (456)
  • Tablice (459)
    • Moduł array (460)
    • Pakiet numarray (462)
  • Podsumowanie (465)
  • Ćwiczenia (465)

Rozdział 20. Python w firmie (467)

  • Aplikacje biznesowe (468)
    • Zarządzanie dokumentem (468)
    • Ludzie skatalogowani (471)
    • Podejmowanie akcji za pomocą diagramów przepływu (472)
  • Audyty, ustawy i inna cenna wiedza (473)
    • Audyty i zarządzanie dokumentami (474)
  • Korzystanie z rzeczywistych systemów biznesowych (475)
    • Wprowadzenie do zestawu narzędzi wftk (476)
    • Moduł python-ldap (490)
    • Dodatkowe informacje na temat LDAP (494)
    • Wracamy do wftk (495)
  • Podsumowanie (500)
  • Ćwiczenia (500)

Rozdział 21. Aplikacje i usługi internetowe (501)

  • REST - architektura sieci WWW (502)
    • Charakterystyka REST (502)
    • Operacje REST (504)
  • HTTP - REST w realnym świecie (505)
    • Widoczny serwer WWW (506)
    • Żądanie HTTP (509)
    • Odpowiedź HTTP (510)
  • CGI - zamiana skryptu w aplikację internetową (511)
    • Umowa między serwerem WWW a skryptem CGI (513)
    • Specjalne zmienne środowiskowe CGI (514)
    • Pobieranie danych od użytkownika przy użyciu formularzy HTML (516)
    • Moduł cgi - przetwarzanie formularzy HTML (517)
  • Tworzenie wiki (522)
    • Główna biblioteka BittyWiki (524)
    • Interfejs WWW dla BittyWiki (527)
  • Usługi internetowe (536)
    • Sposób działania usług internetowych (537)
  • Usługi internetowe REST (538)
    • Szybkie wprowadzenie do REST - znajdowanie okazji w Amazon.com (538)
    • Znajdowanie okazji (540)
    • Dodawanie interfejsu REST do BittyWiki (544)
    • Wyszukiwanie i zastępowanie w wiki przy użyciu usługi internetowej w systemie REST (547)
  • Protokół XML-RPC (551)
    • Krótkie wprowadzenie do XML-RPC - pobieranie wiadomości z Meerkat (553)
    • Żądanie XML-RPC (555)
    • Odpowiedź XML-RPC (556)
    • Gdy coś nie działa (557)
    • Udostępnianie BittyWiki dzięki XML-RPC (558)
    • Wyszukiwanie i zastępowanie korzystające z usługi XML-RPC (561)
  • SOAP (563)
    • Krótkie wprowadzenie do SOAP - interfejs Google API (563)
    • Żądanie SOAP (566)
    • Odpowiedź SOAP (567)
    • Jeśli zdarzy się błąd (568)
    • Udostępnianie BittyWiki za pomocą interfejsu SOAP (569)
    • Wyszukiwanie i zastępowanie korzystające z usługi SOAP (571)
  • Dokumentowanie interfejsu usługi internetowej (572)
    • Dokumentacja czytelna dla ludzi (573)
    • Interfejs introspekcji XML-RPC (574)
    • WSDL (575)
  • Wybór standardu usług internetowych (578)
  • Etykieta usług internetowych (579)
    • Użytkownicy usług (579)
    • Twórcy usług (580)
    • Wykorzystywanie aplikacji internetowych jako usługi internetowe (580)
  • Przykłady publicznie dostępnych usług internetowych (581)
  • Podsumowanie (582)
  • Ćwiczenia (582)

Rozdział 22. Integracja Pythona i Javy (583)

  • Powody tworzenia skryptów w aplikacjach Javy (584)
  • Porównanie implementacji Pythona (585)
  • Instalacja Jythona (586)
  • Uruchamianie Jythona (586)
    • Uruchamianie trybu interaktywnego (586)
    • Wykonywanie skryptów w Jythonie (588)
    • Opcje sterowania skryptami (589)
    • Tworzenie poleceń wykonywalnych (589)
  • Uruchamianie Jythona bez użycia skryptu (591)
  • Pakiet aplikacji bazującej na Jythonie (591)
  • Integracja Javy i Jythona (592)
    • Stosowanie klas Javy w Jythonie (592)
    • Dostęp do baz danych z poziomu Jythona (597)
    • Tworzenie serwletów J2EE w Jythonie (602)
  • Rozszerzanie HttpServlet (605)
    • Wybór narzędzi dla Jythona (608)
  • Testowanie z wykorzystaniem Jythona (609)
  • Osadzanie interpretera Jythona (610)
    • Wywoływanie skryptu Jythona w Javie (610)
  • Kompilacja skryptu Pythona do kodu Javy (612)
  • Obsługa różnic między rozwiązaniami CPython i Jython (613)
  • Podsumowanie (614)
  • Ćwiczenia (615)

Dodatek A Odpowiedzi do ćwiczeń (617)

Dodatek B Zasoby internetowe (651)

Dodatek C Co nowego w Pythonie 2.4? (655)

Słowniczek (659)

Skorowidz (669)

Python. Od podstaw

Szybka wysyłka po zaksięgowaniu wpłaty.

Przy zakupie powyżej 190zł
dostawa kurierem GRATIS

Dodaj nas do ulubionych sprzedawców

Zobacz nasze pozostałe aukcje