Python. Zwięzłe kompendium dla programisty Łęczna

Przez ostatnie trzydzieści lat Python intensywnie się rozwijał. Stał się dojrzałym językiem programowania, nadającym się do tworzenia zarówno niewielkich, wyspecjalizowanych narzędzi, jak i złożonych systemów. Zakres jego możliwości poszerzają liczne biblioteki i narzędzia. Ta wszechstronność i …

od 45 zł Najbliżej: 16 km

Liczba ofert: 4

Oferta sklepu

Opis

Przez ostatnie trzydzieści lat Python intensywnie się rozwijał. Stał się dojrzałym językiem programowania, nadającym się do tworzenia zarówno niewielkich, wyspecjalizowanych narzędzi, jak i złożonych systemów. Zakres jego możliwości poszerzają liczne biblioteki i narzędzia. Ta wszechstronność i bogactwo stanowią jednak duże wyzwanie dla programistów, którzy chcieliby nie tyle poznać poszczególne funkcje tego języka, ile dogłębnie go zrozumieć i nauczyć się "pythonicznego" sposobu myślenia. Ta książka jest zwięzłym, skupionym na praktyce przewodnikiem po Pythonie w wersji 3.6 i nowszych. Dzięki niej skoncentrujesz się na rdzeniu języka i podstawowych zagadnieniach, które musisz doskonale opanować, jeśli chcesz pisać w nim dobry kod. Dowiesz się zatem, jak działa Python i jakich zasad należy przestrzegać podczas tworzenia programów, które później będą łatwe do przetestowania, debugowania i utrzymania. Dobrze zrozumiesz kluczowe kwestie, takie jak abstrakcja danych, kontrola przepływu programu, struktura programu, funkcje, obiekty i moduły. Poszczególne treści zostały zilustrowane przejrzystymi fragmentami kodu, pozwalającymi nie tylko łatwiej przyswoić opisane zagadnienia, ale i poczuć niezwykły urok Pythona - tę magię, która sprawia, że programowanie w tym języku daje mnóstwo przyjemności i satysfakcji! W książce: czym jest rdzeń Pythona praca z danymi i ich analiza zasady tworzenia przejrzystego i niezawodnego kodu funkcje i idiomy w programowaniu funkcjonalnym generatory, klasy, moduły, pakiety prawidłowa obsługa I/O i korzyści ze stosowania słowników Python? Zacznij od tego, co w nim najważniejsze! Spis treści: Przedmowa Rozdział 1. Podstawy Pythona 1.1. Uruchamianie Pythona 1.2. Programy Pythona 1.3. Prymitywy, zmienne i wyrażenia 1.4. Operatory arytmetyczne 1.5. Warunki i sterowanie przepływem programu 1.6. Ciągi tekstowe 1.7. Operacje na plikach 1.8. Listy 1.9. Krotki 1.10. Zbiory 1.11. Słowniki 1.12. Iteracja i pętle 1.13. Funkcje 1.14. Wyjątki 1.15. Zakończenie programu 1.16. Obiekty i klasy 1.17. Moduły 1.18. Pisanie skryptów 1.19. Pakiety 1.20. Strukturyzacja aplikacji 1.21. Zarządzanie pakietami stron trzecich 1.22. Python pasuje do Twojego mózgu Rozdział 2. Operatory, wyrażenia i manipulacja danymi 2.1. Literały 2.2. Wyrażenia i lokalizacje 2.3. Standardowe operatory 2.4. Modyfikacje w miejscu 2.5. Porównywanie obiektów 2.6. Operatory porównania porządkowego 2.7. Wyrażenia logiczne i wartości prawdziwe 2.8. Wyrażenia warunkowe 2.9. Operacje obejmujące elementy iterowalne 2.10. Operacje na sekwencjach 2.11. Operacje na mutowalnych obiektach sekwencyjnych 2.12. Operacje na zbiorach 2.13. Operacje na mapowaniach 2.14. Lista, zbiór i słownik 2.15. Wyrażenia generujące 2.16. Operator atrybutu (.) 2.17. Operator wywołania funkcji () 2.18. Kolejność liczenia 2.19. Podsumowanie: sekretne życie danych Rozdział 3. Struktura i kontrola przepływu programu 3.1. Struktura i wykonanie programu 3.2. Wykonanie warunkowe 3.3. Pętle i iteracje 3.4. Wyjątki 3.4.1. Hierarchia wyjątków 3.4.2. Wyjątki i kontrola przepływu 3.4.3. Definiowanie nowych wyjątków 3.4.4. Powiązane wyjątki 3.4.5. Śledzenie wyjątków 3.4.6. Wskazówka dotycząca obsługi wyjątków 3.5. Menedżery kontekstu i instrukcja with 3.6. Asercje i __debug__ 3.7. Podsumowanie Rozdział 4. Obiekty, typy i protokoły 4.1. Podstawowe pojęcia 4.2. Tożsamość i typ obiektu 4.3. Zliczanie referencji i odśmiecanie pamięci 4.4. Referencje i kopie 4.5. Reprezentacja obiektu i wyświetlanie 4.6. Obiekty pierwszoklasowe 4.7. Używanie wartości None dla opcjonalnych lub brakujących danych 4.8. Protokoły obiektu i abstrakcja danych 4.9. Protokół obiektu 4.10. Protokół liczbowy 4.11. Protokół porównania 4.12. Protokoły konwersji 4.13. Protokół kontenera 4.14. Protokół iteracji 4.15. Protokół atrybutów 4.16. Protokół funkcji 4.17. Protokół menedżera kontekstu 4.18. Podsumowanie: pythoniczność Rozdział 5. Funkcje 5.1. Definicje funkcji 5.2. Argumenty domyślne 5.3. Argumenty wariadyczne (zmienna liczba argumentów) 5.4. Argumenty słów kluczowych 5.5. Wariadyczne argumenty słów kluczowych 5.6. Funkcje akceptujące wszystkie dane wejściowe 5.7. Argumenty tylko pozycyjne 5.8. Nazwy, wpisy dokumentacyjne i wskazówki dotyczące typów 5.9. Zastosowanie funkcji i przekazywanie parametrów 5.10. Zwracane wartości 5.11. Obsługa błędów 5.12. Zasady określania zakresu 5.13. Rekurencja 5.14. Wyrażenie lambda 5.15. Funkcje wyższego rzędu 5.16. Przekazywanie argumentów w funkcjach zwrotnych 5.17. Zwracanie wyników z wywołań zwrotnych 5.18. Dekoratory 5.19. Funkcje map, filter i reduce 5.20. Przegląd funkcji, atrybutów i sygnatur 5.21. Inspekcja środowiska 5.22. Dynamiczne wykonywanie i tworzenie kodu 5.23. Funkcje asynchroniczne i await 5.24. Podsumowanie: przemyślenia na temat funkcji i kompozycji Rozdział 6. Generatory 6.1. Generatory i yield 6.2. Generatory z możliwością ponownego uruchomienia 6.3. Delegowanie generatora 6.4. Używanie generatorów w praktyce 6.5. Ulepszone generatory i wyrażenia yield 6.6. Zastosowania ulepszonych generatorów 6.7. Generatory i obsługa await 6.8. Podsumowanie: krótka historia generatorów i patrzenie w przyszłość Rozdział 7. Klasy i programowanie obiektowe 7.1. Obiekty 7.2. Wyrażenie class 7.3. Instancje 7.4. Dostęp do atrybutów 7.5. Zasady ustalania zakresu 7.6. Przeciążanie operatora i protokoły 7.7. Dziedziczenie 7.8. Unikanie dziedziczenia poprzez kompozycję 7.9. Unikanie dziedziczenia poprzez funkcje 7.10. Wiązanie dynamiczne i technika kaczego typowania 7.11. Niebezpieczeństwo dziedziczenia po typach wbudowanych 7.12. Zmienne i metody klasy 7.13. Metody statyczne 7.14. Słowo na temat wzorców projektowych 7.15. Enkapsulacja danych i atrybuty prywatne 7.16. Wskazówka typu 7.17. Właściwości 7.18. Typy, interfejsy i klasy abstrakcyjne 7.19. Wielokrotne dziedziczenie, interfejsy i domieszki 7.20. Dyspozycja oparta na typie 7.21. Dekoratory klas 7.22. Nadzorowane dziedziczenie 7.23. Cykl życia obiektu i zarządzanie pamięcią 7.24. Słabe referencje 7.25. Wewnętrzna reprezentacja obiektów i wiązanie atrybutu 7.26. Proxy, wrapper i delegacje 7.27. Zmniejszenie wykorzystania pamięci za pomocą __slots__ 7.28. Deskryptory 7.29. Proces definicji klasy 7.30. Dynamiczne tworzenie klas 7.31. Metaklasy 7.32. Obiekty wbudowane dla instancji i klas 7.33. Podsumowanie: zachowaj prostotę Rozdział 8. Moduły i pakiety 8.1. Moduły i wyrażenie import 8.2. Buforowanie modułów 8.3. Importowanie wybranych nazw z modułu 8.4. Importy cykliczne 8.5. Ponowne ładowanie i zwolnienie modułu 8.6. Kompilacja modułów 8.7. Ścieżka wyszukiwania modułów 8.8. Wykonanie jako program główny 8.9. Pakiety 8.10. Import wewnątrz pakietu 8.11. Uruchamianie podmodułu pakietu jako skryptu 8.12. Kontrolowanie przestrzeni nazw pakietu 8.13. Kontrolowanie eksportu pakietów 8.14. Dane pakietu 8.15. Obiekty modułu 8.16. Wdrażanie pakietów Pythona 8.17. Przedostatnie słowo: zacznij od pakietu 8.18. Podsumowanie: zachowaj prostotę Rozdział 9. Obsługa operacji wejścia-wyjścia 9.1. Reprezentacja danych 9.2. Kodowanie i dekodowanie tekstu 9.3. Formatowanie tekstu i bajtów 9.4. Czytanie opcji wiersza poleceń 9.5. Zmienne środowiskowe 9.6. Pliki i obiekty plików 9.6.1. Nazwy plików 9.6.2. Tryby plików 9.6.3. Buforowanie operacji wejścia-wyjścia 9.6.4. Kodowanie w trybie tekstowym 9.6.5. Obsługa wiersza w trybie tekstowym 9.7. Warstwy abstrakcyjne wejścia-wyjścia 9.7.1. Metody plików 9.8. Standardowe wejście, wyjście i błąd 9.9. Katalogi 9.10. Funkcja print() 9.11. Generowanie wyjścia 9.12. Pobieranie danych wejściowych 9.13. Serializacja obiektów 9.14. Operacje blokujące i współbieżność 9.14.1. Nieblokujące operacje wejścia-wyjścia 9.14.2. Odpytywanie operacji wejścia-wyjścia 9.14.3. Wątki 9.14.4. Równoczesne wykonywanie z asyncio 9.15. Standardowe moduły biblioteczne 9.15.1. Moduł asyncio 9.15.2. Moduł binascii 9.15.3. Moduł cgi 9.15.4. Moduł configparser 9.15.5. Moduł csv 9.15.6. Moduł errno 9.15.7. Moduł fcntl 9.15.8. Moduł hashlib 9.15.9. Pakiet http 9.15.10. Moduł io 9.15.11. Moduł json 9.15.12. Moduł logging 9.15.13. Moduł os 9.15.14. Moduł os.path 9.15.15. Moduł pathlib 9.15.16. Moduł re 9.15.17. Moduł shutil 9.15.18. Moduł select 9.15.19. Moduł smtplib 9.15.20. Moduł socket 9.15.21. Moduł struct 9.15.22. Moduł subprocess 9.15.23. Moduł tempfile 9.15.24. Moduł textwrap 9.15.25. Moduł threading 9.15.26. Moduł time 9.15.27. Pakiet urllib 9.15.28. Moduł unicodedata 9.15.29. Pakiet xml 9.16. Podsumowanie Rozdział 10. Funkcje wbudowane i biblioteka standardowa 10.1. Funkcje wbudowane 10.2. Wyjątki wbudowane 10.2.1. Klasy bazowe wyjątków 10.2.2. Atrybuty wyjątków 10.2.3. Predefiniowane klasy wyjątków 10.3. Biblioteka standardowa 10.3.1. Moduł collections 10.3.2. Moduł datetime 10.3.3. Moduł itertools 10.3.4. Moduł inspect 10.3.5. Moduł math 10.3.6. Moduł os 10.3.7. Moduł random 10.3.8. Moduł re 10.3.9. Moduł shutil 10.3.10. Moduł statistics 10.3.11. Moduł sys 10.3.12. Moduł time 10.3.13. Moduł turtle 10.3.14. Moduł unittest 10.4. Podsumowanie: korzystaj z wbudowanych elementów O autorze: David Beazley jest amerykańskim inżynierem oprogramowania. Pythonem zajmuje się od 1996 roku i w znaczący sposób przyczynił się do jego rozwoju. Autor ważnych książek o Pythonie, napisał też kilka narzędzi programistycznych. Obecnie prowadzi zaawansowane kursy informatyki.

Specyfikacja

Podstawowe informacje

Autor
  • David Beazley
Wydawnictwo
  • Helion
Okładka
  • Miękka
Format
  • 16.5x23.5cm
Rok wydania
  • 2022
Ilość stron
  • 304
Tematyka
  • Projektowanie
ISBN
  • 9788328390195
Model
  • 9788328390195