- Wydawnictwo:
- Helion
- Wydawnictwo:
- Helion
- Ocena:
- 4.5/6 Opinie: 75
- Stron:
- 1496
- Druk:
- oprawa twarda
- Dostępne formaty:
-
PDFePubMobi
Opis
książki
:
Python. Wprowadzenie. Wydanie V
Python jest wieloparadygmatowym, wszechstronnym językiem programowania, zoptymalizowanym pod kątem efektywności pracy, czytelności kodu i jakości oprogramowania. Jego popularność rośnie, co wynika z wielości i różnorodności zastosowań oraz z tego, że jest darmowy i łatwo przenośny, można się go szybko nauczyć, a tworzenie kodu Pythona sprawia sporo przyjemności. Wszystkie te cechy dają zespołom deweloperskim strategiczną przewagę w dużych i małych projektach. Aby wykorzystać zalety Pythona, konieczne jest zdobycie solidnych podstaw tego języka, a następnie dogłębne zrozumienie bardziej zaawansowanych koncepcji i porządne ich przećwiczenie podczas pisania własnego kodu.
To kompleksowy podręcznik do nauki programowania w Pythonie. Jego piąte wydanie zostało gruntownie zaktualizowane i rozbudowane o dodatkowe treści. Omówiono tu najnowsze wersje Pythona w liniach 3.X i 2.X, czyli 3.3 i 2.7, i dodano opisy nowych lub rozszerzonych mechanizmów, takich jak obsługa formatu JSON, moduł timeit, pakiet PyPy, metoda os.popen, generatory, rekurencje, słabe referencje, atrybuty i metody __mro__, __iter__, super, __slots__, metaklasy, deskryptory, funkcja random, pakiet Sphinx i wiele innych. W książce znalazło się mnóstwo ćwiczeń, quizów, pomocnych ilustracji oraz przykładów kodu. Jest to kompendium dla każdego, kto chce szybko zacząć programować w Pythonie i tworzyć wydajny kod o wysokiej jakości.
W tej książce przedstawiono między innymi:
- składnię Pythona i koncepcje związane z iteracjami
- dokładny opis ważniejszych wbudowanych typów obiektów i ich możliwości
- struktury programistyczne wyższego poziomu
- programowanie funkcyjne i programowanie zorientowane obiektowo
- zaawansowane zagadnienia dla profesjonalistów
Już dziś zacznij pisać znakomity kod w Pythonie!
W tej książce znajdziesz obszerne, dogłębne wprowadzenie do języka Python. Oparte o popularny kurs szkoleniowy autorstwa Marka Lutza, to zaktualizowane piąte wydanie pomoże Ci szybko tworzyć wydajny, wysokiej jakości kod w języku Python. To idealny sposób, aby rozpocząć nową przygodę z tym językiem, niezależnie od tego, czy jesteś początkującym użytkownikiem Pythona, czy doświadczonym programistą, znającym wiele innych języków programowania.
Uzupełniony o quizy, ćwiczenia i pomocne ilustracje, ten łatwy w użyciu, praktyczny przewodnik pozwoli Ci szybko rozpocząć pracę zarówno z Pythonem 2.7, jak i 3.3 — najnowszymi edycjami z linii 2.X i 3.X — oraz innymi wersjami, które są dziś szeroko stosowane. Znajdziesz tutaj również opisy wielu zaawansowanych mechanizmów Pythona, które ostatnio upowszechniły się w programach napisanych w tym języku.
- Poznaj podstawowe, wbudowane typy obiektów Pythona, takie jak liczby, listy oraz słowniki.
- Twórz i przetwarzaj obiekty za pomocą instrukcji Pythona oraz poznaj ogólny model składni tego języka.
- Używaj funkcji dla uniknięcia nadmiarowości kodu i tworzenia pakietów kodu do ponownego użycia.
- Poznaj moduły Pythona — pakiety instrukcji, funkcji oraz innych narzędzi zorganizowanych w większe komponenty.
- Odkryj klasy — narzędzia programowania zorientowanego obiektowo Pythona umożliwiające strukturyzację kodu.
- Poznaj model obsługi wyjątków i inne narzędzia programistyczne ułatwiające pisanie większych programów.
- Poznaj zaawansowane narzędzia Pythona, takie jak m.in. dekoratory, deskryptory, metaklasy i przetwarzanie tekstu Unicode.
„Python. Wprowadzenie znajduje się na samym szczycie mojej listy książek polecanych każdemu, kto chce zacząć programowanie w Pythonie”.
Doug Hellmann, starszy inżynier oprogramowania, Racemi, Inc.
Wybrane bestsellery
-
Nowość Promocja
Sztuczna inteligencja stale się rozwija. Właściwie codziennie słyszymy o jej rosnących możliwościach, nowych osiągnięciach i przyszłości, jaką nam przyniesie. Jednak w tej książce skupiamy się nie na przyszłości, a na teraźniejszości i praktycznym obliczu AI - na usługach, które świadczy już dziś. Większość najciekawszych zastosowań sztucznej inteligencji bazuje na ML (uczenie maszynowe, ang. machine learning), NLP (przetwarzanie języka naturalnego, ang. natural language processing) i architekturze RAG (ang. retrieval augmented generation) zwiększającej możliwości tzw. dużych modeli językowych (LLM, ang. large language model). Stanowią one podwaliny budowy systemów AI, bez których te systemy często wcale nie mogłyby powstać.- PDF + ePub + Mobi
- Druk 39 pkt
(37,89 zł najniższa cena z 30 dni)
39.50 zł
79.00 zł (-50%) -
Odkryj potęgę tworzenia aplikacji webowych z najpopularniejszym językiem programowania ostatnich lat! Ta obszerna, licząca ponad 500 stron publikacja to prawdziwa skarbnica wiedzy dla każdego, kto pragnie zgłębić tajniki projektowania nowoczesnych rozwiązań internetowych w Pythonie. Od fundamentów po zaawansowane techniki - ta książka przeprowadzi
- PDF + ePub + Mobi 34 pkt
-
Nowość Promocja
Przetwarzanie obrazów to dynamicznie rozwijająca się dziedzina, która znajduje zastosowanie w licznych branżach, takich jak medycyna, motoryzacja, przemysł rozrywkowy, bezpieczeństwo, rolnictwo czy marketing. Umożliwia automatyczne rozpoznawanie obiektów, analizę obrazów medycznych i tworzenie interaktywnych aplikacji korzystających ze sztucznej inteligencji. Warto się zagłębić w techniki przetwarzania obrazów, które stały się dostępniejsze i skuteczniejsze niż kiedykolwiek wcześniej dzięki lepszemu wykorzystaniu mocy obliczeniowej niezbędnej do procesowania sieci konwolucyjnych (CNN) i algorytmów YOLO. Ponadto modele generatywne, jak DALL-E czy Midjourney, oferują możliwości generowania obrazów na potrzeby trenowania modeli AI, co pozwala zwiększać różnorodność i wielkość puli danych (ang. data augmentation). Powszechnym narzędziem w segmencie computer vision jest biblioteka OpenCV. Jest używana do analizy obrazów, rozpoznawania obiektów, detekcji twarzy, wykrywania ruchu czy segmentacji obrazów. OpenCV oferuje dostęp do szerokiego zakresu narzędzi i algorytmów, a dobre opanowanie biblioteki otwiera drzwi do ciekawych projektów związanych z widzeniem komputerowym. Umiejętność przetwarzania obrazów jest niezwykle ceniona na rynku pracy – specjaliści mogą liczyć na atrakcyjne stanowiska i różnorodne wyzwania technologiczne.- Videokurs 34 pkt
(39,59 zł najniższa cena z 30 dni)
34.65 zł
99.00 zł (-65%) -
Nowość Promocja
Język programowania ogólnego przeznaczenia Python należy obecnie do najpopularniejszych na świecie. Skąd się bierze jego fenomen? Niewątpliwie kluczowe znaczenie ma tu bardzo czytelna składnia, mocno zbliżona do składni języka naturalnego. Czyni to Pythona dość łatwym do opanowania, także dla początkujących. Osoby bardziej doświadczone doceniają go za wszechstronność. Pythona można używać w różnych dziedzinach, takich jak analiza danych, sztuczna inteligencja, tworzenie stron internetowych, automatyka i automatyzacja, pisanie aplikacji mobilnych i wiele innych. Dodajmy do tego rozbudowany pakiet bibliotek standardowych i oto mamy (niemal) idealny język programowania.- PDF + ePub + Mobi
- Druk 29 pkt
(27,90 zł najniższa cena z 30 dni)
29.49 zł
59.00 zł (-50%) -
Nowość Promocja
Tę książkę docenią w szczególności analitycy danych. Wyjaśniono w niej potencjał wnioskowania przyczynowego w zakresie szacowania wpływu i efektów w biznesie. Opisano klasyczne metody wnioskowania przyczynowego, w tym testy A/B, regresja liniowa, wskaźnik skłonności, metoda syntetycznej kontroli i metoda różnicy w różnicach, przy czym skoncentrowano się przede wszystkim na praktycznym aspekcie tych technik. Znalazło się tu również omówienie nowoczesnych rozwiązań, takich jak wykorzystanie uczenia maszynowego do szacowania heterogenicznych efektów. Każda metoda została zilustrowana opisem zastosowania w branży technologicznej.- PDF + ePub + Mobi
- Druk 37 pkt
(35,90 zł najniższa cena z 30 dni)
37.45 zł
74.90 zł (-50%) -
Nowość Promocja
Flask jest jednym z mikroframeworków napisanych w języku Python. Przedrostek „mikro-” oznacza tyle, że framework ten nie wymaga określonych narzędzi ani bibliotek. Bazuje na użytkowych rozszerzeniach i należy do najpopularniejszych tego typu platform Pythona. Wiele firm programistycznych i samodzielnych deweloperów używa go do tworzenia nowoczesnych, skalowalnych aplikacji webowych – są wśród nich między innymi Pinterest czy LinkedIn. Elastyczność, lekkość i prostota użycia czyni z Flaska idealny wybór zarówno dla początkujących, jak i dla zaawansowanych programistów. Z jednej strony bowiem można szybko tworzyć w nim prototypy, z drugiej – Flask nadaje się idealnie do kreowania dużych, skomplikowanych aplikacji.- Videokurs 48 pkt
(39,90 zł najniższa cena z 30 dni)
48.65 zł
139.00 zł (-65%) -
Nowość Promocja
Tę książkę docenią średnio zaawansowani użytkownicy Pythona, którzy tworzą aplikacje korzystające z osiągnięć nauki o danych. Znajdziesz w niej omówienie możliwości języka, wbudowanych struktur danych Pythona, jak również takich bibliotek jak NumPy, pandas, scikit-learn i matplotlib. Nauczysz się wczytywania danych w różnych formatach, porządkowania, grupowania i agregowana zbiorów danych, a także tworzenia wykresów i map. Poszczególne zagadnienia zostały zilustrowane praktycznymi przykładami tworzenia rzeczywistych aplikacji, takich jak system obsługi taksówek z wykorzystaniem danych lokalizacyjnych, analiza reguł asocjacyjnych dla danych transakcji czy też uczenie maszynowe modelu przewidującego zmiany kursów akcji. Każdy rozdział zawiera interesujące ćwiczenia, które pozwolą Ci nabrać biegłości w stosowaniu opisanych tu technik.- PDF + ePub + Mobi
- Druk 34 pkt
(32,90 zł najniższa cena z 30 dni)
34.50 zł
69.00 zł (-50%) -
Promocja
Dzięki tej książce dowiesz się, jak pozyskiwać, analizować i wizualizować dane, a potem używać ich do rozwiązywania problemów biznesowych. Wystarczy, że znasz podstawy Pythona i matematyki na poziomie liceum, aby zacząć stosować naukę o danych w codziennej pracy. Znajdziesz tu szereg praktycznych i zrozumiałych przykładów: od usprawniania działalności wypożyczalni rowerów, poprzez wyodrębnianie danych z witryn internetowych, po budowę systemów rekomendacyjnych. Poznasz rozwiązania oparte na danych, przydatne w podejmowaniu decyzji biznesowych. Nauczysz się korzystać z eksploracyjnej analizy danych, przeprowadzać testy A/B i klasyfikację binarną, a także używać algorytmów uczenia maszynowego.- PDF + ePub + Mobi
- Druk 34 pkt
(32,90 zł najniższa cena z 30 dni)
34.50 zł
69.00 zł (-50%) -
Promocja
Ta książka wyjaśni Ci rolę matematyki w tworzeniu, renderowaniu i zmienianiu wirtualnych środowisk 3D, a ponadto pozwoli odkryć tajemnice najpopularniejszych dzisiaj silników gier. Za sprawą licznych praktycznych ćwiczeń zorientujesz się, co się kryje za rysowaniem linii i kształtów graficznych, stosowaniem wektorów i wierzchołków, budowaniem i renderowaniem siatek, jak również przekształcaniem wierzchołków. Nauczysz się używać kodu Pythona, a także bibliotek Pygame i PyOpenGL do budowy własnych silników. Dowiesz się też, jak tworzyć przydatne API i korzystać z nich podczas pisania własnych aplikacji.- PDF + ePub + Mobi
- Druk 44 pkt
(39,90 zł najniższa cena z 30 dni)
44.50 zł
89.00 zł (-50%) -
Promocja
To trzecie, zaktualizowane i uzupełnione wydanie bestsellerowego podręcznika programowania w Pythonie. Naukę rozpoczniesz od podstawowych koncepcji programowania. Poznasz takie pojęcia jak zmienne, listy, klasy i pętle, a następnie utrwalisz je dzięki praktycznym ćwiczeniom. Dowiesz się, jak zapewnić interaktywność programom, i nauczysz się poprawnego testowania kodu przed dodaniem go do projektu. W kolejnych rozdziałach przystąpisz do praktycznej realizacji trzech projektów: gry zręcznościowej inspirowanej klasyczną Space Invaders, wizualizacji danych za pomocą dostępnych dla Pythona niezwykle użytecznych bibliotek i prostej aplikacji internetowej, gotowej do wdrożenia na serwerze WWW i opublikowania w internecie.- PDF + ePub + Mobi
- Druk 59 pkt
(9,90 zł najniższa cena z 30 dni)
59.50 zł
119.00 zł (-50%)
O autorze książki
Mark Lutz od 30 lat zajmuje się programowaniem. Dziś jest jedną z najważniejszych postaci w świecie Pythona. Napisał kilka popularnych, wielokrotnie wznawianych książek o programowaniu w tym języku. Przeprowadził też kilkaset sesji treningowych poświęconych Pythonowi. Zanim w 1992 roku zainteresował się tym językiem, zajmował się implementacją Prologa i pracował nad kompilatorami, narzędziami programistycznymi, aplikacjami skryptowymi oraz systemami klient-serwer.
Mark Lutz - pozostałe książki
-
Promocja
Jeżeli jednak chcesz mieć zawsze pod ręką sprawdzone źródło informacji, które pozwoli Ci w każdej sytuacji rozwiać wątpliwości, to trafiłeś na doskonałą pozycję. Należy ona do serii Leksykon kieszonkowy i charakteryzuje się niezwykle zwięzłym, przejrzystym układem najważniejszych treści oraz poręczną formą. Znajdziesz tu szczegółowe informacje na temat typów wbudowanych, wyjątków, programowania obiektowego oraz przetwarzania nazw i reguł zasięgu. Kolejne wydanie tej książki zostało ulepszone i zaktualizowane o mnóstwo nowych informacji, takich jak wykorzystanie Python Launcher w systemie Windows czy formalne reguły dziedziczenia. To doskonałe źródło informacji na temat języka Python!- PDF + ePub + Mobi
- Druk 24 pkt
(19,90 zł najniższa cena z 30 dni)
24.95 zł
49.90 zł (-50%) -
Promocja
Updated for both Python 3.4 and 2.7, this convenient pocket guide is the perfect on-the-job quick reference. You’ll find concise, need-to-know information on Python types and statements, special method names, built-in functions and exceptions, commonly used standard library modules, and other prominent Python tools. The handy index lets you pinpoin- ePub + Mobi 46 pkt
(28,44 zł najniższa cena z 30 dni)
46.74 zł
54.99 zł (-15%) -
Promocja
Get a comprehensive, in-depth introduction to the core Python language with this hands-on book. Based on author Mark Lutz’s popular training course, this updated fifth edition will help you quickly write efficient, high-quality code with Python. It’s an ideal way to begin, whether you’re new to programming or a professional developer versed in othe- ePub + Mobi 237 pkt
(228,65 zł najniższa cena z 30 dni)
237.15 zł
279.00 zł (-15%) -
Promocja
Niniejsza książka należy do popularnej serii Leksykon kieszonkowy, dzięki której zawsze i wszędzie możesz przypomnieć sobie wybrane zagadnienia, związane z różną tematyką. Pozycja, którą właśnie trzymasz w rękach, została poświęcona językowi Python. W trakcie jej lektury zapoznasz się z takimi zagadnieniami, jak sterowanie przepływem programu, wykorzystanie pętli, list, słowników oraz operacje na plikach. Ponadto w każdej chwili będziesz mógł sprawdzić składnię oraz sposoby wykorzystania funkcji i wyjątków wbudowanych. Książka stanowi znakomite kompendium wiedzy na temat języka Python. Sprawdzi się ona w rękach początkującego użytkownika - jako przewodnik, a w rękach zaawansowanego programisty - jako pomocnik.- PDF + ePub + Mobi
- Druk 14 pkt
(9,90 zł najniższa cena z 30 dni)
14.95 zł
29.90 zł (-50%) -
Promocja
Dzięki tej książce zapoznasz się z podstawowymi typami wbudowanymi Pythona, takimi jak liczby, listy oraz słowniki, nauczysz się tworzyć i przetwarzać obiekty za pomocą instrukcji Pythona, a także opanujesz ogólny model składni tego języka, stworzysz strukturę kodu i wykorzystasz kod ponownie dzięki podstawowym narzędziom proceduralnym Pythona, dowiesz się wszystkiego o modułach Pythona - pakietach instrukcji i funkcji oraz innych narzędziach zorganizowanych w większe komponenty, odkryjesz narzędzie programowania zorientowanego obiektowo, umożliwiające strukturyzację kodu, opanujesz model obsługi wyjątków i narzędzia programistyczne służące do pisania większych programów, zapoznasz się z zaawansowanymi narzędziami Pythona, w tym dekoratorami, deskryptorami, metaklasami i przetwarzaniem tekstu Unicode.- PDF + ePub + Mobi
- Druk 74 pkt
(39,90 zł najniższa cena z 30 dni)
74.50 zł
149.00 zł (-50%) -
Książka Python. Wprowadzenie. Wydanie III stanowi kompletny i szczegółowy przewodnik po podstawach języka Python. Wiedza w niej zawarta umożliwia pełne zrozumienie tego języka, co pozwoli Ci pojąć dowolne przykłady kodu na poziomie aplikacji. Zwięźle i jasno przedstawione przykłady świetnie ilustrują poszczególne kwestie i problemy, co daje solidny fundament do praktycznego zastosowania świeżo nabytych umiejętności. Ta książka ma wszystko, czego potrzebujesz, aby nie tylko dokładnie poznać język Python, ale także efektywnie z niego korzystać!
- Druk 129 pkt
Niedostępna
-
Promocja
If you've mastered Python's fundamentals, you're ready to start using it to get real work done. Programming Python will show you how, with in-depth tutorials on the language's primary application domains: system administration, GUIs, and the Web. You'll also explore how Python is used in databases, networking, front-end scripting layers, text proce- ePub + Mobi 237 pkt
(228,65 zł najniższa cena z 30 dni)
237.15 zł
279.00 zł (-15%) -
Promocja
This is the book to reach for when you're coding on the fly and need an answer now. It's an easy-to-use reference to the core language, with descriptions of commonly used modules and toolkits, and a guide to recent changes, new features, and upgraded built-ins -- all updated to cover Python 3.X as well as version 2.6. You'll also quickly find exact- ePub + Mobi 46 pkt
(28,44 zł najniższa cena z 30 dni)
46.74 zł
54.99 zł (-15%) -
Promocja
Portable, powerful, and a breeze to use, Python is ideal for both standalone programs and scripting applications. With this hands-on book, you can master the fundamentals of the core Python language quickly and efficiently, whether you're new to programming or just new to Python. Once you finish, you will know enough about the language to use it in- ePub + Mobi 118 pkt
(80,99 zł najniższa cena z 30 dni)
118.15 zł
139.00 zł (-15%) -
Promocja
Already the industry standard for Python users, ProgrammingPython fromO'Reilly just got even better. This third edition has been updated toreflect current best practices andthe abundance of changes introduced by the latest version of thelanguage, Python 2.5.Whether you're a novice or an advancedpractitioner, you'll find thisrefreshed book more than- ePub + Mobi 177 pkt
(119,68 zł najniższa cena z 30 dni)
177.65 zł
209.00 zł (-15%)
Ebooka "Python. Wprowadzenie. Wydanie V" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Python. Wprowadzenie. Wydanie V" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolonych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Python. Wprowadzenie. Wydanie V" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły książki
- Tytuł oryginału:
- Learning Python, 5th Edition
- Tłumaczenie:
- Grzegorz Kowalczyk, Andrzej Watrak, Anna Trojan, Marek Pętlicki
- ISBN Książki drukowanej:
- 978-83-283-9169-7, 9788328391697
- Data wydania książki drukowanej :
- 2020-08-04
- ISBN Ebooka:
- 978-83-283-9170-3, 9788328391703
- Data wydania ebooka :
- 2022-03-29 Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Format:
- 164x239
- Numer z katalogu:
- 163242
- Rozmiar pliku Pdf:
- 10.7MB
- Rozmiar pliku ePub:
- 6.8MB
- Rozmiar pliku Mobi:
- 22.1MB
- Pobierz przykładowy rozdział PDF »
- Przykłady na ftp » 315.9kB
Spis treści książki
- Przedmowa
- Ekosystem tej książki
- O niniejszym, piątym wydaniu książki
- Python 2.x i 3.x kiedyś
- Python 2.x i 3.x obecnie
- Omawiamy zarówno wersję 2.x, jak i 3.x
- Której wersji Pythona powinienem użyć?
- Wymagania wstępne dla użytkowników tej książki
- Struktura tej książki
- Czym nie jest ta książka
- Ta książka nie jest leksykonem ani przewodnikiem po konkretnych zastosowaniach Pythona
- To nie jest krótka historia dla ludzi, którzy się spieszą
- Ta książka jest tak liniowa, jak na to pozwala Python
- O przykładach zamieszczonych w książce
- Wersje Pythona
- Platformy
- Pobieranie kodów źródłowych dla tej książki
- Konwencje wykorzystywane w książce
- Podziękowania
- Trochę wspomnień
- Podziękowania dla Pythona
- Podziękowania osobiste
- Część I Wprowadzenie
- Rozdział 1. Pytania i odpowiedzi dotyczące Pythona
- Dlaczego ludzie używają Pythona?
- Jakość oprogramowania
- Wydajność programistów
- Czy Python jest językiem skryptowym?
- Jakie są wady języka Python?
- Kto dzisiaj używa Pythona?
- Co mogę zrobić za pomocą Pythona?
- Programowanie systemowe
- Graficzne interfejsy użytkownika (GUI)
- Skrypty internetowe
- Integracja komponentów
- Programowanie bazodanowe
- Szybkie prototypowanie
- Programowanie numeryczne i naukowe
- I dalej: gry, przetwarzanie obrazu, wyszukiwanie danych, robotyka, Excel
- Jak Python jest rozwijany i wspierany?
- Kompromisy związane z modelem open source
- Jakie są techniczne mocne strony Pythona?
- Jest zorientowany obiektowo i funkcyjny
- Jest darmowy
- Jest przenośny
- Ma duże możliwości
- Można go łączyć z innymi językami
- Jest względnie łatwy w użyciu
- Jest względnie łatwy do nauczenia się
- Zawdzięcza swoją nazwę Monty Pythonowi
- Jak Python wygląda na tle innych języków?
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Dlaczego ludzie używają Pythona?
- Rozdział 2. Jak Python wykonuje programy?
- Wprowadzenie do interpretera Pythona
- Wykonywanie programu
- Z punktu widzenia programisty
- Z punktu widzenia Pythona
- Kompilacja kodu bajtowego
- Maszyna wirtualna Pythona
- Wpływ na wydajność
- Wpływ na proces programowania
- Warianty modeli wykonywania
- Alternatywne implementacje Pythona
- CPython standard
- Jython Python dla języka Java
- IronPython Python dla .NET
- Stackless: Python dla programowania współbieżnego
- PyPy Python dla szybkości i wydajności
- Narzędzia do optymalizacji działania programu
- Cython: hybryda Pythona/C
- Shed Skin: translator języka Python na C ++
- Psyco oryginalny kompilator JIT
- Zamrożone pliki binarne
- Przyszłe możliwości?
- Alternatywne implementacje Pythona
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Rozdział 3. Jak wykonuje się programy?
- Interaktywny wiersz poleceń
- Uruchamianie sesji interaktywnej
- Ścieżka systemowa
- Nowe opcje systemu Windows w wersji 3.3: PATH, Launcher
- Gdzie zapisywać programy katalogi z kodem źródłowym
- Czego nie wpisywać znaki zachęty i komentarze
- Interaktywne wykonywanie kodu
- Do czego służy sesja interaktywna
- Eksperymentowanie
- Testowanie
- Eksperymentowanie
- Uwagi praktyczne wykorzystywanie sesji interaktywnej
- Wpisywanie instrukcji wielowierszowych
- Systemowy wiersz poleceń i pliki źródłowe
- Pierwszy skrypt
- Wykonywanie plików z poziomu wiersza poleceń powłoki
- Sposoby użycia wiersza poleceń
- Uwagi praktyczne wykorzystywanie wierszy poleceń i plików
- Skrypty wykonywalne w stylu uniksowym #!
- Podstawy skryptów uniksowych
- Sztuczka z wyszukiwaniem programu przy użyciu polecenia env w systemie Unix
- Python 3.3 launcher #! w systemie Windows
- Klikanie ikon plików
- Podstawowe zagadnienia związane z klikaniem ikon plików
- Kliknięcie ikony w systemie Windows
- Sztuczka z funkcją input
- Inne ograniczenia programów uruchamianych kliknięciem ikony
- Importowanie i przeładowywanie modułów
- Podstawy importowania i przeładowywania modułów
- Więcej o modułach atrybuty
- Moduły i przestrzenie nazw
- Uwagi praktyczne instrukcje import i reload
- Wykorzystywanie funkcji exec do wykonywania plików modułów
- Interfejs użytkownika środowiska IDLE
- Szczegóły uruchamiania środowiska IDLE
- Podstawy środowiska IDLE
- Wybrane funkcje środowiska IDLE
- Zaawansowane narzędzia środowiska IDLE
- Uwagi praktyczne korzystanie ze środowiska IDLE
- Inne środowiska IDE
- Inne opcje wykonywania kodu
- Osadzanie wywołań
- Zamrożone binarne pliki wykonywalne
- Uruchamianie kodu z poziomu edytora tekstu
- Jeszcze inne możliwości uruchamiania
- Przyszłe możliwości?
- Jaką opcję wybrać?
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Sprawdź swoją wiedzę ćwiczenia do części pierwszej
- Interaktywny wiersz poleceń
- Część II Typy i operacje
- Rozdział 4. Wprowadzenie do typów obiektów Pythona
- Hierarchia pojęć w Pythonie
- Dlaczego korzystamy z typów wbudowanych
- Najważniejsze typy danych w Pythonie
- Liczby
- Łańcuchy znaków
- Operacje na sekwencjach
- Niezmienność
- Metody specyficzne dla typu
- Uzyskiwanie pomocy
- Inne sposoby kodowania łańcuchów znaków
- Ciągi znaków w formacie Unicode
- Dopasowywanie wzorców
- Listy
- Operacje na typach sekwencyjnych
- Operacje specyficzne dla typu
- Sprawdzanie granic
- Zagnieżdżanie
- Listy składane
- Słowniki
- Operacje na odwzorowaniach
- Zagnieżdżanie raz jeszcze
- Brakujące klucze testowanie za pomocą if
- Sortowanie kluczy pętle for
- Iteracja i optymalizacja
- Krotki
- Do czego służą krotki
- Pliki
- Pliki binarne
- Pliki tekstowe Unicode
- Inne narzędzia podobne do plików
- Inne typy podstawowe
- Jak zepsuć elastyczność kodu
- Klasy definiowane przez użytkownika
- I wszystko inne
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Rozdział 5. Typy liczbowe
- Podstawy typów liczbowych Pythona
- Literały liczbowe
- Wbudowane narzędzia liczbowe
- Operatory wyrażeń Pythona
- Połączone operatory stosują się do priorytetów
- Podwyrażenia grupowane są w nawiasach
- Pomieszane typy poddawane są konwersji
- Wprowadzenie: przeciążanie operatorów i polimorfizm
- Liczby w akcji
- Zmienne i podstawowe wyrażenia
- Formaty wyświetlania liczb
- Porównania zwykłe i łączone
- Dzielenie klasyczne, bez reszty i prawdziwe
- Obsługa różnych wersji Pythona
- Dzielenie bez reszty a odcinanie
- Dlaczego odcinanie ma znaczenie?
- Precyzja liczb całkowitych
- Liczby zespolone
- Notacja szesnastkowa, ósemkowa i dwójkowa literały i konwersje
- Operacje na poziomie bitów
- Inne wbudowane narzędzia numeryczne
- Inne typy liczbowe
- Typ Decimal (liczby dziesiętne)
- Typ Decimal zagadnienia podstawowe
- Globalne ustawianie precyzji liczb dziesiętnych
- Menedżer kontekstu dziesiętnego
- Typ Fraction (liczby ułamkowe)
- Typ Fraction zagadnienia podstawowe
- Dokładność numeryczna ułamków zwykłych i dziesiętnych
- Konwersje ułamków i typy mieszane
- Zbiory
- Podstawy zbiorów w Pythonie 2.6 i wersjach wcześniejszych
- Literały zbiorów w Pythonie 3.x i 2.7
- Ograniczenia na obiekty niemutowalne i zbiory zamrożone
- Zbiory składane w Pythonie 3.x i 2.7
- Dlaczego zbiory?
- Wartości Boolean
- Typ Decimal (liczby dziesiętne)
- Rozszerzenia numeryczne
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Podstawy typów liczbowych Pythona
- Rozdział 6. Wprowadzenie do typów dynamicznych
- Sprawa brakujących deklaracji typu
- Zmienne, obiekty i referencje
- Typy powiązane są z obiektami, a nie ze zmiennymi
- Obiekty są uwalniane
- Referencje współdzielone
- Referencje współdzielone a modyfikacje w miejscu
- Referencje współdzielone a równość
- Typy dynamiczne są wszędzie
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Sprawa brakujących deklaracji typu
- Rozdział 7. Łańcuchy znaków
- Co znajdziesz w tym rozdziale
- Unicode krótka historia
- Łańcuchy znaków podstawy
- Literały łańcuchów znaków
- Łańcuchy znaków w apostrofach i cudzysłowach są tym samym
- Sekwencje ucieczki reprezentują znaki specjalne
- Surowe łańcuchy znaków blokują sekwencje ucieczki
- Potrójne cudzysłowy i apostrofy kodują łańcuchy znaków będące wielowierszowymi blokami
- Łańcuchy znaków w akcji
- Podstawowe operacje
- Indeksowanie i wycinki
- Rozszerzone wycinki trzeci limit i obiekty wycinków
- Narzędzia do konwersji łańcuchów znaków
- Konwersje kodu znaków
- Modyfikowanie łańcuchów znaków
- Metody łańcuchów znaków
- Składnia wywoływania metod
- Metody typów znakowych
- Przykłady metod łańcuchów znaków modyfikowanie
- Przykłady metod łańcuchów znaków analiza składniowa tekstu
- Inne często używane metody łańcuchów znaków
- Oryginalny moduł string (usunięty w wersji 3.0)
- Wyrażenia formatujące łańcuchy znaków
- Formatowanie łańcuchów tekstu z użyciem wyrażeń formatujących podstawy
- Składnia zaawansowanych wyrażeń formatujących
- Przykłady zaawansowanych wyrażeń formatujących
- Wyrażenia formatujące oparte na słowniku
- Formatowanie łańcuchów z użyciem metody format
- Podstawy
- Używanie kluczy, atrybutów i przesunięć
- Zaawansowana składnia wywołań metody format
- Przykłady zaawansowanego formatowania łańcuchów znaków z użyciem metody format
- Porównanie metody format z wyrażeniami formatującymi
- Dlaczego miałbyś korzystać z metody format
- Dodatkowe możliwości: wbudowane funkcje czy ogólne techniki programowania
- Elastyczna składnia odwołań: dodatkowa złożoność i nakładanie się funkcjonalności
- Jawne odwołania do wartości: teraz opcjonalne i prawdopodobnie nie będą używane
- Nazwy metod i argumenty neutralne kontekstowo estetyka kodu kontra zastosowania praktyczne
- Funkcje a wyrażenia: niewielka wygoda
- Generalne kategorie typów
- Typy z jednej kategorii współdzielą zbiory operacji
- Typy mutowalne można modyfikować w miejscu
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Co znajdziesz w tym rozdziale
- Rozdział 8. Listy oraz słowniki
- Listy
- Listy w akcji
- Podstawowe operacje na listach
- Iteracje po listach i składanie list
- Indeksowanie, wycinki i macierze
- Modyfikacja list w miejscu
- Przypisywanie do indeksu i wycinków
- Wywołania metod list
- Kilka słów o sortowaniu list
- Inne, często stosowane metody list
- Inne popularne operacje na listach
- Słowniki
- Słowniki w akcji
- Podstawowe operacje na słownikach
- Modyfikacja słowników w miejscu
- Inne metody słowników
- Przykład baza danych o filmach
- Przykład mapowanie wartości na klucze
- Uwagi na temat korzystania ze słowników
- Wykorzystywanie słowników do symulowania elastycznych list liczby całkowite jako klucze
- Wykorzystywanie słowników z rzadkimi strukturami danych krotki jako klucze
- Unikanie błędów z brakującymi kluczami
- Zagnieżdżanie słowników
- Inne sposoby tworzenia słowników
- Zmiany dotyczące słowników w Pythonie 3.x i 2.7
- Słowniki składane w wersjach 3.x i 2.7
- Widoki słowników w wersji 3.x (oraz wersji 2.7 przy użyciu nowych metod)
- Widoki słowników i zbiory
- Sortowanie kluczy słowników w wersji 3.x
- Porównywanie rozmiarów słowników nie działa w 3.x
- W wersji 3.x metoda has_key nie istnieje, niech żyje in!
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Rozdział 9. Krotki, pliki i wszystko inne
- Krotki
- Krotki w akcji
- Właściwości składni krotek przecinki i nawiasy
- Konwersje, metody oraz niemutowalność
- Dlaczego istnieją listy i krotki
- Repetytorium: rekordy krotki nazwane
- Krotki w akcji
- Pliki
- Otwieranie plików
- Wykorzystywanie plików
- Pliki w akcji
- Pliki tekstowe i binarne krótka historia
- Przechowywanie obiektów Pythona w plikach i przetwarzanie ich
- Przechowywanie natywnych obiektów Pythona moduł pickle
- Przechowywanie obiektów Pythona w formacie JSON
- Przechowywanie spakowanych danych binarnych moduł struct
- Menedżery kontekstu plików
- Inne narzędzia powiązane z plikami
- Przegląd i podsumowanie podstawowych typów obiektów
- Elastyczność obiektów
- Referencje a kopie
- Porównania, testy równości i prawda
- Porównywania i sortowania typów mieszanych w Pythonie 2.x i 3.x
- Porównywanie słowników w Pythonie 2.x i 3.x
- Prawda czy fałsz, czyli znaczenie True i False w Pythonie
- Obiekt None
- Typ bool
- Hierarchie typów Pythona
- Obiekty typów
- Inne typy w Pythonie
- Pułapki typów wbudowanych
- Przypisanie tworzy referencje, nie kopie
- Powtórzenie dodaje jeden poziom zagłębienia
- Uwaga na cykliczne struktury danych
- Typów niemutowalnych nie można modyfikować w miejscu
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Sprawdź swoją wiedzę ćwiczenia do części drugiej
- Krotki
- Część III Instrukcje i składnia
- Rozdział 10. Wprowadzenie do instrukcji Pythona
- Raz jeszcze o hierarchii pojęciowej języka Python
- Instrukcje Pythona
- Historia dwóch if
- Co dodaje Python
- Co usuwa Python
- Nawiasy są opcjonalne
- Koniec wiersza jest końcem instrukcji
- Koniec wcięcia to koniec bloku
- Skąd bierze się składnia z użyciem wcięć
- Kilka przypadków specjalnych
- Przypadki specjalne dla reguły o końcu wiersza
- Przypadki specjalne dla reguły o wcięciach bloków
- Szybki przykład interaktywne pętle
- Prosta pętla interaktywna
- Wykonywanie obliczeń na danych wpisywanych przez użytkownika
- Obsługa błędów poprzez sprawdzanie danych wejściowych
- Obsługa błędów za pomocą instrukcji try
- Obsługa liczb zmiennoprzecinkowych
- Kod zagnieżdżony na trzy poziomy głębokości
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Rozdział 11. Przypisania, wyrażenia i wyświetlanie
- Instrukcje przypisania
- Formy instrukcji przypisania
- Przypisanie sekwencji
- Zaawansowane wzorce przypisywania sekwencji
- Rozszerzona składnia rozpakowania sekwencji w Pythonie 3.x
- Rozszerzona składania rozpakowania w działaniu
- Przypadki brzegowe
- Wygodny gadżet
- Zastosowanie w pętli for
- Przypisanie z wieloma celami
- Przypisanie z wieloma celami a współdzielone referencje
- Przypisania rozszerzone
- Przypisania rozszerzone a współdzielone referencje
- Reguły dotyczące nazw zmiennych
- Konwencje dotyczące nazewnictwa
- Nazwy nie mają typu, ale obiekty tak
- Instrukcje wyrażeń
- Instrukcje wyrażeń i modyfikacje w miejscu
- Polecenia print
- Funkcja print z Pythona 3.x
- Format wywołania
- Funkcja print z wersji 3.x w działaniu
- Instrukcja print w Pythonie 2.x
- Formy instrukcji
- Instrukcja print Pythona 2.x w działaniu
- Przekierowanie strumienia wyjściowego
- Program Witaj, świecie!
- Ręczne przekierowanie strumienia wyjścia
- Automatyczne przekierowanie strumienia
- Wyświetlanie niezależne od wersji
- Konwerter 2to3
- Importowanie z __future__
- Neutralizacja różnic w wyświetlaniu za pomocą kodu
- Funkcja print z Pythona 3.x
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Instrukcje przypisania
- Rozdział 12. Testy if i reguły składni
- Instrukcje if
- Ogólny format
- Proste przykłady
- Rozgałęzienia kodu
- Obsługa domyślnych wartości wyboru
- Obsługa bardziej złożonych operacji
- Reguły składni Pythona raz jeszcze
- Ograniczniki bloków reguły tworzenia wcięć
- Unikaj mieszania tabulatorów i spacji nowa opcja sprawdzania błędów w Pythonie 3.x
- Ograniczniki instrukcji wiersze i znaki kontynuacji
- Kilka przypadków specjalnych
- Ograniczniki bloków reguły tworzenia wcięć
- Testy prawdziwości i testy logiczne
- Wyrażenie trójargumentowe if/else
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Instrukcje if
- Rozdział 13. Pętle while i for
- Pętle while
- Ogólny format
- Przykłady
- Instrukcje break, continue, pass oraz else w pętli
- Ogólny format pętli
- Instrukcja pass
- Instrukcja continue
- Instrukcja break
- Klauzula else pętli
- Więcej o części pętli else
- Pętle for
- Ogólny format
- Przykłady
- Podstawowe zastosowanie
- Inne typy danych
- Przypisanie krotek w pętli for
- Rozszerzone przypisanie sekwencji w pętlach for w Pythonie 3.x
- Zagnieżdżone pętle for
- Techniki tworzenia pętli
- Pętle z licznikami range
- Skanowanie sekwencji pętla while z funkcją range kontra pętla for
- Przetasowania sekwencji funkcje range i len
- Przechodzenie niewyczerpujące range kontra wycinki
- Modyfikowanie list range kontra listy składane
- Przechodzenie równoległe zip oraz map
- Równoznaczność funkcji map w Pythonie 2.x
- Tworzenie słowników za pomocą funkcji zip
- Generowanie wartości przesunięcia i elementów enumerate
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Pętle while
- Rozdział 14. Iteracje i listy składane
- Iteracje pierwsze spojrzenie
- Protokół iteracyjny iteratory plików
- Iterowanie ręczne iter i next
- Pełny protokół iteracji
- Iteracje ręczne
- Inne wbudowane typy iterowalne
- Listy składane wprowadzenie
- Podstawy list składanych
- Wykorzystywanie list składanych w plikach
- Rozszerzona składnia list składanych
- Klauzula filtrująca: if
- Zagnieżdżone pętle: klauzula for
- Inne konteksty iteracyjne
- Nowe obiekty iterowalne w Pythonie 3.x
- Wpływ na kod w wersji 2.x zalety i wady
- Obiekt iterowalny range
- Obiekty iterowalne map, zip i filter
- Iteratory wielokrotne kontra pojedyncze
- Obiekty iterowalne widoki słownika
- Inne zagadnienia związane z iteracjami
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Iteracje pierwsze spojrzenie
- Rozdział 15. Wprowadzenie do dokumentacji
- Źródła dokumentacji Pythona
- Komentarze ze znakami #
- Funkcja dir
- Notki dokumentacyjne __doc__
- Notki dokumentacyjne zdefiniowane przez użytkownika
- Standardy i priorytety notek dokumentacyjnych
- Wbudowane notki dokumentacyjne
- PyDoc funkcja help
- PyDoc raporty HTML
- Python 3.2 i nowsze wersje: tryb PyDoc dla wszystkich przeglądarek
- Python 3.2 i wersje wcześniejsze: klient GUI
- Nie tylko notki docstrings pakiet Sphinx
- Zbiór standardowej dokumentacji
- Zasoby internetowe
- Publikowane książki
- Często spotykane problemy programistyczne
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Sprawdź swoją wiedzę ćwiczenia do części trzeciej
- Źródła dokumentacji Pythona
- Część IV Funkcje i generatory
- Rozdział 16. Podstawy funkcji
- Dlaczego używamy funkcji
- Tworzenie funkcji
- Instrukcje def
- Instrukcja def uruchamiana jest w czasie wykonania
- Pierwszy przykład definicje i wywoływanie
- Definicja
- Wywołanie
- Polimorfizm w Pythonie
- Drugi przykład przecinające się sekwencje
- Definicja
- Wywołania
- Raz jeszcze o polimorfizmie
- Zmienne lokalne
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Rozdział 17. Zasięgi
- Podstawy zasięgów w Pythonie
- Reguły dotyczące zasięgów
- Rozwiązywanie nazw reguła LEGB
- Inne zasięgi Pythona przegląd
- Przykład zasięgu
- Zasięg wbudowany
- Przedefiniowanie wbudowanych nazw: lepiej czy gorzej?
- Instrukcja global
- Projektowanie programów: minimalizowanie stosowania zmiennych globalnych
- Projektowanie programów: minimalizowanie modyfikacji dokonywanych pomiędzy plikami
- Inne metody dostępu do zmiennych globalnych
- Zasięgi a funkcje zagnieżdżone
- Szczegóły dotyczące zasięgów zagnieżdżonych
- Przykłady zasięgów zagnieżdżonych
- Funkcje fabrykujące: domknięcia
- Proste funkcje fabrykujące
- Funkcje fabrykujące kontra klasy, runda pierwsza
- Zachowywanie stanu zasięgu zawierającego za pomocą argumentów domyślnych
- Zasięgi zagnieżdżone, wartości domyślne i wyrażenia lambda
- Zmienne pętli mogą wymagać wartości domyślnych, a nie zasięgów
- Dowolne zagnieżdżanie zasięgów
- Instrukcja nonlocal w Pythonie 3.x
- Podstawy instrukcji nonlocal
- Instrukcja nonlocal w akcji
- Użycie zmiennych nielokalnych w celu modyfikacji
- Przypadki graniczne
- Czemu służą zmienne nonlocal? Opcje zachowania stanu
- Zachowanie stanu: zmienne nonlocal (tylko w wersji 3.x)
- Zachowanie stanu: zmienne globalne tylko jedna kopia
- Zachowanie stanu: klasy jawne atrybuty (wprowadzenie)
- Zachowanie stanu: atrybuty funkcji (w wersjach 3.x i 2.x)
- Zachowanie stanu: obiekty mutowalne duchy przeszłości języka Pyton?
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Podstawy zasięgów w Pythonie
- Rozdział 18. Argumenty
- Podstawy przekazywania argumentów
- Argumenty a współdzielone referencje
- Unikanie modyfikacji argumentów mutowalnych
- Symulowanie parametrów wyjścia i wielu wyników działania
- Specjalne tryby dopasowywania argumentów
- Podstawy dopasowywania argumentów
- Składnia dopasowania argumentów
- Dopasowywanie argumentów szczegóły
- Przykłady ze słowami kluczowymi i wartościami domyślnymi
- Słowa kluczowe
- Wartości domyślne
- Łączenie słów kluczowych i wartości domyślnych
- Przykłady dowolnych argumentów
- Nagłówki: zbieranie argumentów
- Wywołania: rozpakowywanie argumentów
- Ogólne zastosowanie funkcji
- Zlikwidowana wbudowana funkcja apply (Python 2.x)
- Argumenty tylko ze słowami kluczowymi (z Pythona 3.x)
- Reguły dotyczące kolejności
- Czemu służą argumenty ze słowami kluczowymi?
- Przykład z funkcją obliczającą minimum
- Pełne rozwiązanie
- Dodatkowy bonus
- Puenta
- Uogólnione funkcje działające na zbiorach
- Emulacja funkcji print z Pythona 3.0
- Wykorzystywanie argumentów ze słowami kluczowymi
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Podstawy przekazywania argumentów
- Rozdział 19. Zaawansowane zagadnienia dotyczące funkcji
- Koncepcje projektowania funkcji
- Funkcje rekurencyjne
- Sumowanie z użyciem rekurencji
- Implementacje alternatywne
- Pętle a rekurencja
- Obsługa dowolnych struktur
- Rekurencja kontra kolejki i stosy
- Cykle, ścieżki i ograniczenia stosu
- Więcej przykładów rekurencji
- Obiekty funkcji atrybuty i adnotacje
- Pośrednie wywołania funkcji obiekty pierwszej klasy
- Introspekcja funkcji
- Atrybuty funkcji
- Adnotacje funkcji w Pythonie 3.x
- Funkcje anonimowe lambda
- Podstawy wyrażeń lambda
- Po co używamy wyrażeń lambda
- Wielotorowe rozgałęzienia kodu finał
- Jak (nie) zaciemniać kodu napisanego w Pythonie
- Zasięgi: wyrażenia lambda również można zagnieżdżać
- Narzędzia programowania funkcyjnego
- Odwzorowywanie funkcji na obiekty iterowalne map
- Wybieranie elementów obiektów iterowalnych funkcja filter
- Łączenie elementów obiektów iterowalnych funkcja reduce
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Rozdział 20. Listy składane i generatory
- Listy składane i narzędzia funkcyjne
- Listy składane kontra funkcja map
- Dodajemy warunki i pętle zagnieżdżone filter
- Formalna składnia list składanych
- Przykład listy składane i macierze
- Nie nadużywaj list składanych: reguła KISS
- Druga strona medalu: wydajność, zwięzłość, ekspresyjność
- Funkcje i wyrażenia generatorów
- Funkcje generatorów yield kontra return
- Zawieszanie stanu
- Integracja protokołu iteracji
- Funkcje generatorów w działaniu
- Dlaczego funkcje generatorów?
- Rozszerzony protokół funkcji generatorów send kontra next
- Wyrażenia generatorów obiekty iterowalne spotykają złożenia
- Dlaczego wyrażenia generatora?
- Wyrażenia generatora a funkcja map
- Wyrażenia generatora a filtry
- Funkcje generatorów a wyrażenia generatorów
- Generatory są obiektami o jednoprzebiegowej iteracji
- Generowanie wyników we wbudowanych typach, narzędziach i klasach
- Generatory i narzędzia biblioteczne: skanery katalogów
- Generatory i funkcje aplikacji
- Przegląd: obiekty iterowalne definiowane przez użytkownika w klasach
- Przykład generowanie mieszanych sekwencji
- Sekwencje mieszające
- Proste funkcje
- Funkcje generatora
- Wyrażenia generatora
- Funkcja tester
- Permutacje: wszystkie możliwe kombinacje
- Nie nadużywaj generatorów: reguła EIBTI
- Inne spojrzenie: miejsce i czas, zwięzłość, ekspresyjność
- Przykład emulowanie funkcji zip i map za pomocą narzędzi iteracyjnych
- Tworzymy własną implementację funkcji map
- Własna wersja funkcji zip(...) i map(None, ...)
- Funkcje generatorów yield kontra return
- Podsumowanie obiektów składanych
- Zakresy i zmienne składane
- Zrozumieć zbiory i słowniki składane
- Rozszerzona składnia zbiorów i słowników składanych
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Listy składane i narzędzia funkcyjne
- Rozdział 21. Wprowadzenie do pomiarów wydajności
- Pomiary wydajności iteracji
- Moduł pomiaru czasu domowej roboty
- Skrypt mierzący wydajność
- Wyniki pomiarów czasu
- Wpływ wywołań funkcji: map
- Inne rozwiązania dla modułu do pomiaru czasu
- Użycie argumentów ze słowami kluczowymi w wersji 3.x
- Inne sugestie
- Mierzenie czasu iteracji z wykorzystaniem modułu timeit
- Podstawowe reguły korzystania z modułu timeit
- Interaktywne użycie i wywołania API
- Korzystanie z poziomu wiersza polecenia
- Mierzenie czasu działania instrukcji wielowierszowych
- Inne tryby użytkowania: instalacje, podsumowania i obiekty
- Moduł i skrypt testujący z użyciem modułu timeit
- Wyniki działania skryptu testującego
- Jeszcze trochę zabawy z mierzeniem wydajności
- Wygrana funkcji map i rzadka porażka PyPy
- Jeszcze kilka słów o wpływie wywołań funkcji
- Techniki porównywania własne funkcje kontra moduł timeit
- Możliwości ulepszenia kod instalacyjny
- Podstawowe reguły korzystania z modułu timeit
- Inne zagadnienia związane z mierzeniem szybkości działania kodu test pystone
- Pułapki związane z funkcjami
- Lokalne nazwy są wykrywane w sposób statyczny
- Wartości domyślne i obiekty mutowalne
- Funkcje, które nie zwracają wyników
- Różne problemy związane z funkcjami
- Otaczanie zasięgów i zmiennych pętli: funkcje fabrykujące
- Ukrywanie wbudowanych funkcji przez przypisania: cieniowanie
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Sprawdź swoją wiedzę ćwiczenia do części czwartej
- Pomiary wydajności iteracji
- Część V Moduły i pakiety
- Rozdział 22. Moduły wprowadzenie
- Dlaczego używamy modułów
- Architektura programu w Pythonie
- Struktura programu
- Importowanie i atrybuty
- Moduły biblioteki standardowej
- Jak działa importowanie
- 1. Odszukanie modułu
- 2. Kompilowanie (o ile jest to potrzebne)
- 3. Wykonanie
- Pliki kodu bajtowego __pycache__ w Pythonie 3.2+
- Modele plików kodu bajtowego w akcji
- Ścieżka wyszukiwania modułów
- Konfigurowanie ścieżki wyszukiwania
- Wariacje ścieżki wyszukiwania modułów
- Lista sys.path
- Wybór pliku modułu
- Kody źródłowe modułów
- Priorytety wyboru
- Importowanie punktów zaczepienia i plików ZIP
- Pliki zoptymalizowanego kodu bajtowego
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Rozdział 23. Podstawy tworzenia modułów
- Tworzenie modułów
- Nazwy modułów
- Inne rodzaje modułów
- Używanie modułów
- Instrukcja import
- Instrukcja from
- Instrukcja from *
- Operacja importowania jest przeprowadzana tylko raz
- Kod inicjalizujący
- Instrukcje import oraz from są przypisaniami
- Modyfikowanie elementów mutowalnych w modułach
- Modyfikowanie nazw pomiędzy plikami
- Równoważność instrukcji import oraz from
- Potencjalne pułapki związane z użyciem instrukcji from
- Kiedy wymagane jest stosowanie instrukcji import
- Przestrzenie nazw modułów
- Pliki generują przestrzenie nazw
- Słowniki przestrzeni nazw: __dict__
- Kwalifikowanie nazw atrybutów
- Importowanie a zasięgi
- Zagnieżdżanie przestrzeni nazw
- Przeładowywanie modułów
- Podstawy przeładowywania modułów
- Przykład przeładowywania z użyciem reload
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Tworzenie modułów
- Rozdział 24. Pakiety modułów
- Podstawy importowania pakietów
- Pakiety a ustawienia ścieżki wyszukiwania
- Pliki pakietów __init__.py
- Role pliku inicjalizacji pakietu
- Przykład importowania pakietu
- Instrukcja from a instrukcja import w importowaniu pakietów
- Do czego służy importowanie pakietów
- Historia trzech systemów
- Względne importowanie pakietów
- Zmiany w Pythonie 3.0
- Podstawy importowania względnego
- Do czego służą importy względne
- Importowanie względne w wersji 3.x
- Względne importy a bezwzględne ścieżki pakietów
- Zasięg importów względnych
- Podsumowanie reguł wyszukiwania modułów
- Importy względne w działaniu
- Importowanie spoza pakietów
- Importy wewnątrz pakietów
- Importy są nadal względne w stosunku do bieżącego katalogu roboczego
- Użycie importów względnych i bezwzględnych
- Importy względne przeszukują tylko pakiety
- Importy są nadal względne w stosunku do katalogu roboczego (cd.)
- Pułapki związane z importem względnym w pakietach: zastosowania mieszane
- Problem
- Rozwiązanie nr 1: podkatalogi pakietów
- Rozwiązanie 2: import bezwzględny z użyciem pełnej ścieżki
- Przykład: aplikacja z kodem autotestu modułu (wprowadzenie)
- Pakiety przestrzeni nazw w Pythonie 3.3
- Semantyka pakietów przestrzeni nazw
- Algorytm importu
- Wpływ na zwykłe pakiety: opcjonalne pliki __init__.py
- Pakiety przestrzeni nazw w akcji
- Zagnieżdżanie pakietów przestrzeni nazw
- Pliki nadal mają pierwszeństwo przed katalogami
- Semantyka pakietów przestrzeni nazw
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Podstawy importowania pakietów
- Rozdział 25. Zaawansowane zagadnienia związane z modułami
- Koncepcje związane z projektowaniem modułów
- Ukrywanie danych w modułach
- Minimalizacja niebezpieczeństw użycia from * _X oraz __all__
- Włączanie opcji z przyszłych wersji Pythona: __future__
- Mieszane tryby użycia __name__ oraz __main__
- Testy jednostkowe z wykorzystaniem atrybutu __name__
- Przykład kod działający w dwóch trybach
- Symbole walut: Unicode w akcji
- Notki dokumentacyjne: dokumentacja modułu w działaniu
- Modyfikacja ścieżki wyszukiwania modułów
- Rozszerzenie as dla instrukcji import oraz from
- Przykład moduły są obiektami
- Importowanie modułów z użyciem nazwy w postaci ciągu znaków
- Uruchamianie ciągów znaków zawierających kod
- Bezpośrednie wywołania: dwie opcje
- Przykład przechodnie przeładowywanie modułów
- Przeładowywanie rekurencyjne
- Testowanie przeładowań rekurencyjnych
- Rozwiązania alternatywne
- Testowanie wariantów przeładowania
- Przeładowywanie rekurencyjne
- Pułapki związane z modułami
- Kolizje nazw modułów: pakiety i importowanie względne w pakietach
- W kodzie najwyższego poziomu kolejność instrukcji ma znaczenie
- Instrukcja from kopiuje nazwy, jednak łącza już nie
- Instrukcja from * może zaciemnić znaczenie zmiennych
- Funkcja reload może nie mieć wpływu na obiekty importowane za pomocą from
- Funkcja reload i instrukcja from a testowanie interaktywne
- Rekurencyjne importowanie za pomocą from może nie działać
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Sprawdź swoją wiedzę ćwiczenia do części piątej
- Część VI Klasy i programowanie zorientowane obiektowo
- Rozdział 26. Programowanie zorientowane obiektowo wprowadzenie
- Po co używa się klas
- Programowanie zorientowane obiektowo z dystansu
- Wyszukiwanie atrybutów dziedziczonych
- Klasy a instancje
- Wywołania metod klasy
- Tworzenie drzew klas
- Przeciążanie operatorów
- Programowanie zorientowane obiektowo oparte jest na ponownym wykorzystaniu kodu
- Polimorfizm i klasy
- Programowanie przez dostosowanie
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Rozdział 27. Podstawy tworzenia klas
- Klasy generują wiele obiektów instancji
- Obiekty klas udostępniają zachowania domyślne
- Obiekty instancji są rzeczywistymi elementami
- Pierwszy przykład
- Klasy dostosowujemy do własnych potrzeb przez dziedziczenie
- Drugi przykład
- Klasy są atrybutami w modułach
- Klasy mogą przechwytywać operatory Pythona
- Trzeci przykład
- Zwracamy wyniki lub nie
- Po co przeciążamy operatory
- Trzeci przykład
- Najprostsza klasa Pythona na świecie
- Jeszcze kilka słów o rekordach: klasy kontra słowniki
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Klasy generują wiele obiektów instancji
- Rozdział 28. Bardziej realistyczny przykład
- Krok 1. tworzenie instancji
- Tworzenie konstruktorów
- Testowanie w miarę pracy
- Wykorzystywanie kodu na dwa sposoby
- Krok 2. dodawanie metod
- Tworzenie kodu metod
- Krok 3. przeciążanie operatorów
- Udostępnienie sposobów wyświetlania
- Krok 4. dostosowywanie zachowania za pomocą klas podrzędnych
- Tworzenie klas podrzędnych
- Rozszerzanie metod niepoprawny sposób
- Rozszerzanie metod poprawny sposób
- Polimorfizm w akcji
- Dziedziczenie, dostosowanie do własnych potrzeb i rozszerzenie
- Programowanie zorientowane obiektowo idea
- Krok 5. dostosowanie do własnych potrzeb także konstruktorów
- Programowanie zorientowane obiektowo jest prostsze, niż się wydaje
- Inne sposoby łączenia klas
- Krok 6. wykorzystywanie narzędzi do introspekcji
- Specjalne atrybuty klas
- Uniwersalne narzędzie do wyświetlania
- Atrybuty instancji a atrybuty klas
- Nazwy w klasach narzędziowych
- Ostateczna postać naszych klas
- Krok 7. i ostatni przechowywanie obiektów w bazie danych
- Obiekty pickle i shelve
- Moduł pickle
- Moduł shelve
- Przechowywanie obiektów w bazie danych za pomocą shelve
- Interaktywna eksploracja obiektów shelve
- Uaktualnianie obiektów w pliku shelve
- Obiekty pickle i shelve
- Przyszłe kierunki rozwoju
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Krok 1. tworzenie instancji
- Rozdział 29. Szczegóły kodowania klas
- Instrukcja class
- Ogólna forma
- Przykład
- Metody
- Przykład metody
- Wywoływanie konstruktorów klas nadrzędnych
- Inne możliwości wywoływania metod
- Dziedziczenie
- Tworzenie drzewa atrybutów
- Specjalizacja odziedziczonych metod
- Techniki interfejsów klas
- Abstrakcyjne klasy nadrzędne
- Abstrakcyjne klasy nadrzędne z Pythona 3.x oraz 2.6+: wprowadzenie
- Przestrzenie nazw cała historia
- Proste nazwy globalne, o ile nie są przypisane
- Nazwy atrybutów przestrzenie nazw obiektów
- Zen przestrzeni nazw Pythona przypisania klasyfikują zmienne
- Klasy zagnieżdżone jeszcze kilka słów o regule LEGB
- Słowniki przestrzeni nazw przegląd
- Łącza przestrzeni nazw przechodzenie w górę drzewa klas
- Raz jeszcze o notkach dokumentacyjnych
- Klasy a moduły
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Instrukcja class
- Rozdział 30. Przeciążanie operatorów
- Podstawy
- Konstruktory i wyrażenia __init__ i __sub__
- Często spotykane metody przeciążania operatorów
- Indeksowanie i wycinanie __getitem__ i __setitem__
- Wycinki
- Wycinanie i indeksowanie w Pythonie 2.x
- Metoda __index__ w wersji 3.x nie służy do indeksowania!
- Iteracja po indeksie __getitem__
- Obiekty iteratorów __iter__ i __next__
- Iteratory zdefiniowane przez użytkownika
- Skanowanie pojedyncze i wielokrotne
- Klasy i generatory
- Wiele iteracji po jednym obiekcie
- Klasy i wycinki
- Alternatywa: metoda__iter__ i instrukcja yield
- Wielokrotne iteracje za pomocą instrukcji yield
- Iteratory zdefiniowane przez użytkownika
- Test przynależności __contains__, __iter__ i __getitem__
- Dostęp do atrybutów __getattr__ oraz __setattr__
- Odwołania do atrybutów
- Przypisywanie wartości i usuwanie atrybutów
- Inne narzędzia do zarządzania atrybutami
- Emulowanie prywatności w atrybutach instancji
- Reprezentacje łańcuchów __repr__ oraz __str__
- Po co nam dwie metody wyświetlania?
- Uwagi dotyczące wyświetlania
- Dodawanie prawostronne i miejscowa modyfikacja: metody __radd__ i __iadd__
- Dodawanie prawostronne
- Stosowanie metody __add__ w __radd__
- Eskalowanie typu klasy
- Dodawanie w miejscu
- Dodawanie prawostronne
- Wywołania __call__
- Interfejsy funkcji i kod oparty na wywołaniach zwrotnych
- Porównania __lt__, __gt__ i inne
- Metoda __cmp__ w 2.x
- Testy logiczne __bool__ i __len__
- Metody logiczne w Pythonie 2.x
- Destrukcja obiektu __del__
- Uwagi dotyczące stosowania destruktorów
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Podstawy
- Rozdział 31. Projektowanie z użyciem klas
- Python a programowanie zorientowane obiektowo
- Polimorfizm to interfejsy, a nie sygnatury wywołań
- Programowanie zorientowane obiektowo i dziedziczenie związek jest
- Programowanie zorientowane obiektowo i kompozycja związki typu ma
- Raz jeszcze procesor strumienia danych
- Programowanie zorientowane obiektowo a delegacja obiekty opakowujące
- Pseudoprywatne atrybuty klas
- Przegląd zniekształcania nazw zmiennych
- Po co używa się atrybutów pseudoprywatnych
- Metody są obiektami z wiązaniem i bez wiązania
- W wersji 3.x metody niezwiązane są funkcjami
- Metody związane i inne obiekty wywoływane
- Inne obiekty wywoływane
- Klasy są obiektami uniwersalne fabryki obiektów
- Do czego służą fabryki
- Dziedziczenie wielokrotne klasy mieszane
- Tworzenie klas mieszanych
- Odczyt listy atrybutów obiektu __dict__
- Wydobywanie atrybutów odziedziczonych z użyciem dir()
- Wypisywanie atrybutów dla każdego obiektu w drzewie klas
- Uruchomienie kodu wyświetlającego drzewo
- Inny przykład użycia: wyświetlenie nazw zawierających znaki podkreślenia
- Inny przykład użycia: uruchomienie kodu z większymi modułami
- Moduł kolektora
- Miejsce na udoskonalenia: algorytm MRO, sloty, interfejsy graficzne
- Tworzenie klas mieszanych
- Inne zagadnienia związane z projektowaniem
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Python a programowanie zorientowane obiektowo
- Rozdział 32. Zaawansowane zagadnienia związane z klasami
- Rozszerzanie typów wbudowanych
- Rozszerzanie typów za pomocą osadzania
- Rozszerzanie typów za pomocą klas podrzędnych
- Klasy w nowym stylu
- Jak nowy jest nowy styl
- Nowości w klasach w nowym stylu
- Pomijanie instancji we wbudowanych operacjach przy pobieraniu atrybutów
- Dlaczego zmieniło się wyszukiwanie?
- Implikacje wynikające z przechwytywania atrybutów
- Wymogi kodowania obiektów pośredniczących
- Więcej informacji
- Zmiany w modelu typów
- Konsekwencje z perspektywy kontroli typów
- Wszystkie obiekty dziedziczą po klasie object
- Implikacje wynikające z użycia metod domyślnych
- Zmiany w dziedziczeniu diamentowym
- Implikacje wynikające z dziedziczenia diamentowego
- Jawne rozwiązywanie konfliktów
- Zakres zmian kolejności wyszukiwania
- Więcej o kolejności odwzorowywania nazw
- Algorytm MRO
- Śledzenie algorytmu MRO
- Przykład wiązanie atrybutów ze źródłami dziedziczenia
- Pomijanie instancji we wbudowanych operacjach przy pobieraniu atrybutów
- Nowości w klasach w nowym stylu
- Sloty: deklaracje atrybutów
- Podstawy slotów
- Sloty i słowniki przestrzeni nazw
- Wiele slotów w klasach nadrzędnych
- Generyczna obsługa slotów i innych wirtualnych atrybutów
- Zasady używania slotów
- Przykład stosowania slotów: klasa ListTree i funkcja mapattrs
- Co z szybkością slotów?
- Właściwości klas: dostęp do atrybutów
- Podstawy właściwości
- Narzędzia atrybutów: __getattribute__ i deskryptory
- Inne zmiany i rozszerzenia klas
- Sloty: deklaracje atrybutów
- Metody statyczne oraz metody klasy
- Do czego potrzebujemy metod specjalnych
- Metody statyczne w 2.x i 3.x
- Alternatywy dla metod statycznych
- Używanie metod statycznych i metod klas
- Zliczanie instancji z użyciem metod statycznych
- Zliczanie instancji z metodami klas
- Zliczanie instancji dla każdej z klas z użyciem metod klas
- Dekoratory i metaklasy część 1.
- Podstawowe informacje o dekoratorach funkcji
- Pierwsze spojrzenie na funkcję dekoratora zdefiniowaną przez użytkownika
- Pierwsze spojrzenie na dekoratory klas i metaklasy
- Dalsza lektura
- Wbudowana funkcja super: zmiana na lepsze czy na gorsze?
- Wielka debata o funkcji super
- Tradycyjny, uniwersalny i ogólny sposób wywoływania klasy nadrzędnej
- Podstawy i kompromisy użycia funkcji super
- Stara semantyka: magiczny obiekt pośredniczący w wersji 3.x
- Pułapka: beztroskie stosowanie wielokrotnego dziedziczenia
- Ograniczenie: przeciążanie operatorów
- Różnice w użyciu w wersji 2.x: rozbudowane wywołania
- Zalety funkcji super: zmiany drzewa i kierowania metod
- Zmiana klasy w trakcie działania programu a funkcja super
- Kooperatywne kierowanie metod w drzewie wielokrotnego dziedziczenia
- Podstawy: kooperatywne wywołanie funkcji super w akcji
- Ograniczenie: wymóg zakotwiczenia łańcucha wywołań
- Zakresy: model wszystko lub nic
- Elastyczność założenia dotyczącego kolejności wywołań
- Dostosowywanie: zastąpienie metody
- Sprzęganie: zastosowanie w mieszaniu klas
- Dostosowywanie: wymóg takich samych argumentów
- Podsumowanie funkcji super
- Pułapki związane z klasami
- Modyfikacja atrybutów klas może mieć efekty uboczne
- Modyfikowanie mutowalnych atrybutów klas również może mieć efekty uboczne
- Dziedziczenie wielokrotne kolejność ma znaczenie
- Zakresy w metodach i klasach
- Różne pułapki związane z klasami
- Rozsądnie wybieraj miejsce przechowywania atrybutu w instancji lub w klasie
- Zazwyczaj wywołuj konstruktory klasy nadrzędnej
- Klasy wykorzystujące delegację w 3.x __getattr__ i funkcje wbudowane
- Przesadne opakowywanie
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Sprawdź swoją wiedzę ćwiczenia do części szóstej
- Rozszerzanie typów wbudowanych
- Część VII Wyjątki oraz narzędzia
- Rozdział 33. Podstawy wyjątków
- Po co używa się wyjątków
- Role wyjątków
- Wyjątki w skrócie
- Domyślny program obsługi wyjątków
- Przechwytywanie wyjątków
- Zgłaszanie wyjątków
- Wyjątki zdefiniowane przez użytkownika
- Działania końcowe
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Po co używa się wyjątków
- Rozdział 34. Szczegółowe informacje dotyczące wyjątków
- Instrukcja try/except/else
- Jak działa instrukcja try
- Części instrukcji try
- Przechwytywanie wybranych i wszystkich wyjątków
- Przechwytywanie wszystkich wyjątków: pusta instrukcja except i klasa Exception
- Część try/else
- Przykład zachowanie domyślne
- Przykład przechwytywanie wbudowanych wyjątków
- Instrukcja try/finally
- Przykład działania kończące kod z użyciem try/finally
- Połączona instrukcja try/except/finally
- Składnia połączonej instrukcji try
- Łączenie finally oraz except za pomocą zagnieżdżania
- Przykład połączonego try
- Instrukcja raise
- Zgłaszanie wyjątków
- Zakresy widoczności zmiennych w instrukcjach try i except
- Przekazywanie wyjątków za pomocą raise
- Łańcuchy wyjątków w Pythonie 3.x raise from
- Instrukcja assert
- Przykład wyłapywanie ograniczeń (ale nie błędów!)
- Menedżery kontekstu with/as
- Podstawowe zastosowanie
- Protokół zarządzania kontekstem
- Kilka menedżerów kontekstu w wersjach 3.1, 2.7 i nowszych
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Instrukcja try/except/else
- Rozdział 35. Obiekty wyjątków
- Wyjątki powrót do przyszłości
- Wyjątki oparte na łańcuchach znaków znikają
- Wyjątki oparte na klasach
- Tworzenie klas wyjątków
- Do czego służą hierarchie wyjątków
- Wbudowane klasy wyjątków
- Kategorie wbudowanych wyjątków
- Domyślne wyświetlanie oraz stan
- Własne sposoby wyświetlania
- Własne dane oraz zachowania
- Udostępnianie szczegółów wyjątku
- Udostępnianie metod wyjątków
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Wyjątki powrót do przyszłości
- Rozdział 36. Projektowanie z wykorzystaniem wyjątków
- Zagnieżdżanie programów obsługi wyjątków
- Przykład zagnieżdżanie przebiegu sterowania
- Przykład zagnieżdżanie składniowe
- Zastosowanie wyjątków
- Wychodzenie z głęboko zagnieżdżonych pętli: instrukcja go to
- Wyjątki nie zawsze są błędami
- Funkcje mogą sygnalizować warunki za pomocą raise
- Zamykanie plików oraz połączeń z serwerem
- Debugowanie z wykorzystaniem zewnętrznych instrukcji try
- Testowanie kodu wewnątrz tego samego procesu
- Więcej informacji na temat funkcji sys.exc_info
- Wyświetlanie błędów i śladów stosu
- Wskazówki i pułapki dotyczące projektowania wyjątków
- Co powinniśmy opakować w try
- Jak nie przechwytywać zbyt wiele unikanie pustych except i wyjątków
- Jak nie przechwytywać zbyt mało korzystanie z kategorii opartych na klasach
- Podsumowanie podstaw języka Python
- Zbiór narzędzi Pythona
- Narzędzia programistyczne przeznaczone do większych projektów
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Sprawdź swoją wiedzę ćwiczenia do części siódmej
- Zagnieżdżanie programów obsługi wyjątków
- Część VIII Zagadnienia zaawansowane
- Rozdział 37. Łańcuchy znaków Unicode oraz łańcuchy bajtowe
- Zmiany w łańcuchach znaków w Pythonie 3.x
- Podstawy łańcuchów znaków
- Kodowanie znaków
- Jak Python zapisuje ciągi znaków w pamięci
- Typy łańcuchów znaków Pythona
- Po co są stosowane różne typy ciągów?
- Pliki binarne i tekstowe
- Podstawy kodowania ciągów znaków
- Literały tekstowe w Pythonie 3.x
- Literały Unicode w Pythonie 2.x i 3.3
- Literały tekstowe w Pythonie 2.x
- Konwersje typów ciągów
- Literały tekstowe w Pythonie 3.x
- Kod łańcuchów znaków Unicode
- Kod tekstu z zakresu ASCII
- Kod tekstu spoza zakresu ASCII
- Kodowanie i dekodowanie tekstu spoza zakresu ASCII
- Inne techniki kodowania łańcuchów Unicode
- Literały bajtowe
- Konwersja kodowania
- Łańcuchy znaków Unicode w Pythonie 2.x
- Mieszanie typów ciągów w wersji 2.x
- Deklaracje typu kodowania znaków pliku źródłowego
- Wykorzystywanie obiektów bytes z Pythona 3.x
- Wywołania metod
- Operacje na sekwencjach
- Inne sposoby tworzenia obiektów bytes
- Mieszanie typów łańcuchów znaków
- Obiekt bytearray w wersji 3.x (oraz 2.6 lub nowszej)
- Typ bytearray w akcji
- Podsumowanie typów ciągów znaków w Pythonie 3.x
- Wykorzystywanie plików tekstowych i binarnych
- Podstawy plików tekstowych
- Tryby tekstowy i binarny w Pythonie 2.x i 3.x
- Brak dopasowania typu i zawartości w Pythonie 3.x
- Wykorzystywanie plików Unicode
- Odczyt i zapis Unicode w Pythonie 3.x
- Kodowanie ręczne
- Kodowanie danych wyjściowych pliku
- Dekodowanie danych wejściowych pliku
- Dekodowanie błędnych dopasowań
- Obsługa BOM w Pythonie 3.x
- Pomijanie znacznika BOM w Notatniku
- Pomijanie znacznika BOM w Pythonie
- Pliki Unicode w Pythonie 2.x
- Unicode w nazwach plików i w strumieniach
- Nazwy plików: znaki i bajty
- Zawartość strumienia: zmienna PYTHONIOENCODING
- Odczyt i zapis Unicode w Pythonie 3.x
- Inne zmiany w narzędziach do przetwarzania łańcuchów znaków w Pythonie 3.x
- Moduł dopasowywania wzorców re
- Moduł danych binarnych struct
- Moduł serializacji obiektów pickle
- Narzędzia do analizy składniowej XML
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Rozdział 38. Zarządzane atrybuty
- Po co zarządza się atrybutami
- Wstawianie kodu wykonywanego w momencie dostępu do atrybutów
- Właściwości
- Podstawy
- Pierwszy przykład
- Obliczanie atrybutów
- Zapisywanie właściwości w kodzie za pomocą dekoratorów
- Dekoratory setter i deleter
- Deskryptory
- Podstawy
- Argumenty metod deskryptorów
- Deskryptory tylko do odczytu
- Pierwszy przykład
- Obliczone atrybuty
- Wykorzystywanie informacji o stanie w deskryptorach
- Powiązania pomiędzy właściwościami a deskryptorami
- Deskryptory, sloty i nie tylko
- Podstawy
- Metody __getattr__ oraz __getattribute__
- Podstawy
- Unikanie pętli w metodach przechwytujących atrybuty
- Pierwszy przykład
- Metoda __getattribute__
- Obliczanie atrybutów
- Metoda __getattribute__
- Porównanie metod __getattr__ oraz __getattribute__
- Porównanie technik zarządzania atrybutami
- Przechwytywanie atrybutów wbudowanych operacji
- Powrót do menedżerów opartych na delegacji
- Podstawy
- Przykład sprawdzanie poprawności atrybutów
- Wykorzystywanie właściwości do sprawdzania poprawności
- Testowanie kodu
- Wykorzystywanie deskryptorów do sprawdzania poprawności
- Opcja 1: sprawdzanie z wykorzystaniem współdzielonego stanu deskryptora instancji
- Opcja 2: sprawdzanie z wykorzystaniem indywidualnego stanu instancji
- Wykorzystywanie metody __getattr__ do sprawdzania poprawności
- Wykorzystywanie metody __getattribute__ do sprawdzania poprawności
- Wykorzystywanie właściwości do sprawdzania poprawności
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Po co zarządza się atrybutami
- Rozdział 39. Dekoratory
- Czym jest dekorator
- Zarządzanie wywołaniami oraz instancjami
- Zarządzanie funkcjami oraz klasami
- Wykorzystywanie i definiowanie dekoratorów
- Do czego służą dekoratory
- Podstawy
- Dekoratory funkcji
- Zastosowanie
- Implementacja
- Obsługa dekoracji metod
- Dekoratory klas
- Zastosowanie
- Implementacja
- Obsługa większej liczby instancji
- Zagnieżdżanie dekoratorów
- Argumenty dekoratorów
- Dekoratory zarządzają także funkcjami oraz klasami
- Dekoratory funkcji
- Kod dekoratorów funkcji
- Śledzenie wywołań
- Możliwości w zakresie zachowania informacji o stanie
- Atrybuty instancji klasy
- Zakresy zawierające oraz zmienne globalne
- Zakresy funkcji zawierających oraz zmienne nielokalne
- Atrybuty funkcji
- Uwagi na temat klas I dekorowanie metod klas
- Wykorzystywanie zagnieżdżonych funkcji do dekoracji metod
- Wykorzystywanie deskryptorów do dekorowania metod
- Mierzenie czasu wywołania
- Dekoratory a pomiar czasu wywołania
- Niuanse pomiaru czasu
- Dodawanie argumentów dekoratora
- Pomiar czasu z użyciem argumentów dekoratora
- Kod dekoratorów klas
- Klasy singletona
- Alternatywne rozwiązania
- Śledzenie interfejsów obiektów
- Śledzenie interfejsów za pomocą dekoratorów klas
- Stosowanie dekoratorów klas z wbudowanymi typami
- Uwagi na temat klas II zachowanie większej liczby instancji
- Dekoratory a funkcje zarządzające
- Do czego służą dekoratory (raz jeszcze)
- Klasy singletona
- Bezpośrednie zarządzanie funkcjami oraz klasami
- Przykład atrybuty prywatne i publiczne
- Implementacja atrybutów prywatnych
- Szczegóły implementacji I
- Dziedziczenie a delegacja
- Argumenty dekoratora
- Zachowywanie stanu i zakresy funkcji zawierającej
- Wykorzystanie __dict__ oraz __slots__ (i innych nazw wirtualnych)
- Uogólnienie kodu pod kątem deklaracji atrybutów jako publicznych
- Szczegóły implementacji II
- Użycie nazw pseudoprywatnych __X
- Złamanie prywatności
- Kompromisy związane z dekoratorem
- Znane problemy
- Ograniczenie: delegacja metod przeciążania operatorów kończy się niepowodzeniem w Pythonie 3.x
- Sposoby redefiniowania metod przeciążających operatory w wersji 3.x
- Definicja śródwierszowa
- Nadrzędne klasy mieszane
- Warianty kodowania: routery, deskryptory, automatyzacja
- Czy metody operatorów należy weryfikować?
- Alternatywy implementacyjne: wstawianie __getattribute__, inspekcja stosu wywołań
- W Pythonie nie chodzi o kontrolę
- Przykład sprawdzanie poprawności argumentów funkcji
- Cel
- Prosty dekorator sprawdzający przedziały dla argumentów pozycyjnych
- Uogólnienie kodu pod kątem słów kluczowych i wartości domyślnych
- Szczegóły implementacji
- Dalsza introspekcja
- Założenia dotyczące argumentów
- Algorytm dopasowywania
- Znane problemy
- Niepoprawne wywołania
- Dowolne argumenty
- Zagnieżdżone dekoratory
- Argumenty dekoratora a adnotacje funkcji
- Inne zastosowania sprawdzanie typów (skoro nalegamy!)
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Czym jest dekorator
- Rozdział 40. Metaklasy
- Tworzyć metaklasy czy tego nie robić?
- Zwiększające się poziomy magii
- Język pełen haczyków
- Wady funkcji pomocniczych
- Metaklasy a dekoratory klas runda 1.
- Model metaklasy
- Klasy są instancjami obiektu type
- Metaklasy są klasami podrzędnymi klasy type
- Protokół instrukcji class
- Deklarowanie metaklas
- Deklarowanie w wersji 3.x
- Deklarowanie w wersji 2.x
- Kierowanie metaklas w wersjach 3.x i 2.x
- Tworzenie metaklas
- Prosta metaklasa
- Dostosowywanie tworzenia do własnych potrzeb oraz inicjalizacja
- Pozostałe sposoby tworzenia metaklas
- Użycie prostych funkcji fabrycznych
- Przeciążenie wywołań tworzących klasę za pomocą zwykłych klas
- Przeciążenie wywołań tworzących klasę za pomocą metaklas
- Instancje a dziedziczenie
- Metaklasa a klasa nadrzędna
- Dziedziczenie: pełna historia
- Algorytm dziedziczenia w Pythonie: wersja prosta
- Specjalny przypadek deskryptorów
- Algorytm dziedziczenia w Pythonie: wersja nieco pełniejsza
- Dziedziczenie przypisań atrybutów
- Specjalny przypadek wbudowanych operacji
- Metody metaklas
- Metody metaklasy a metody klasy
- Przeciążanie operatorów w metodach metaklasy
- Przykład dodawanie metod do klas
- Ręczne rozszerzanie
- Rozszerzanie oparte na metaklasie
- Metaklasy a dekoratory klas runda 2.
- Rozszerzenie oparte na dekoratorach
- Zarządzanie instancjami zamiast klasami
- Metaklasa równoważna dekoratorowi klasy?
- Przykład zastosowanie dekoratorów do metod
- Ręczne śledzenie za pomocą dekoracji
- Śledzenie za pomocą metaklas oraz dekoratorów
- Zastosowanie dowolnego dekoratora do metod
- Metaklasy a dekoratory klas runda 3. (i ostatnia)
- Podsumowanie rozdziału
- Sprawdź swoją wiedzę quiz
- Sprawdź swoją wiedzę odpowiedzi
- Tworzyć metaklasy czy tego nie robić?
- Rozdział 41. Wszystko, co najlepsze
- Paradoks Pythona
- Opcjonalne cechy języka
- Przeciwko niepokojącym usprawnieniom
- Złożoność a siła
- Prostota a elitarność
- Końcowe wnioski
- Dokąd dalej?
- Na bis: wydrukuj swój certyfikat!
- Paradoks Pythona
- Dodatki
- Dodatek A Instalacja i konfiguracja
- Instalowanie interpretera Pythona
- Czy Python jest już zainstalowany?
- Skąd pobrać Pythona
- Instalacja Pythona
- Konfiguracja Pythona
- Zmienne środowiskowe Pythona
- Jak ustawić opcje konfiguracyjne?
- Zmienne powłoki systemu Unix i Linux
- Zmienne DOS (system Windows)
- Graficzny interfejs użytkownika zmiennych środowiskowych Windows
- Rejestr systemu Windows
- Pliki ścieżek
- Opcje wiersza poleceń Pythona
- Uruchamianie skryptów z argumentami
- Uruchamianie kodu podanego w argumentach i pobranego ze standardowego wejścia
- Uruchamianie modułów umieszczonych w ścieżce wyszukiwania
- Tryby zoptymalizowany i niebuforowany
- Tryb interaktywny po wykonaniu skryptu
- Argumenty wiersza poleceń w Pythonie w.x
- Uruchamianie Pythona 3.3 za pomocą wiersza poleceń Windows
- Uzyskanie pomocy
- Instalowanie interpretera Pythona
- Dodatek B Uruchamianie Pythona 3.x w systemie Windows
- Dziedzictwo systemu Unix
- Dziedzictwo systemu Windows
- Wprowadzenie nowego programu uruchomieniowego w systemie Windows
- Podręcznik do programu uruchomieniowego
- Krok 1: dyrektywa wersji w pliku
- Krok 2: parametry w wierszu poleceń
- Krok 3: stosowanie i zmienianie ustawień domyślnych
- Pułapki nowego programu uruchomieniowego
- Pułapka 1: nierozpoznany w Uniksie wiersz #! uniemożliwia uruchomienie skryptu
- Wpływ zmian na przykłady użyte w książce i korekta
- Pułapka 2: domyślna wersja 2.x w programie uruchomieniowym
- Wpływ zmian na przykłady w książce i korekta
- Pułapka 3: nowa opcja modyfikacji zmiennej PATH
- Pułapka 1: nierozpoznany w Uniksie wiersz #! uniemożliwia uruchomienie skryptu
- Podsumowanie: ostateczny wynik dla systemu Windows
- Dodatek C Zmiany w języku Python a niniejsza książka
- Najważniejsze różnice między wersjami 2.x i 3.x
- Zmiany w wersji 3.x
- Rozszerzenia dostępne tylko w wersji 3.x
- Ogólne uwagi do zmian w wersji 3.x
- Zmiany w bibliotekach i narzędziach
- Zmiany w standardowej bibliotece
- Zmiany w narzędziach
- Migracja do wersji 3.x
- Zmiany w bibliotekach i narzędziach
- Zmiany opisane w piątym wydaniu: wersje 2.7, 3.2 i 3.3
- Zmiany w wersji 2.7
- Zmiany w wersji 3.3
- Zmiany w wersji 3.2
- Zmiany opisane w czwartym wydaniu: wersje 2.6, 3.0 i 3.1
- Zmiany w wersji 3.1
- Zmiany w wersjach 3.0 i 2.6
- Niektóre elementy języka usunięte w Pythonie 3.0
- Zmiany opisane w trzecim wydaniu: wersje 2.3, 2.4 i 2.5
- Wcześniejsze i późniejsze zmiany w Pythonie
- Najważniejsze różnice między wersjami 2.x i 3.x
- Dodatek D Rozwiązania ćwiczeń podsumowujących poszczególne części książki
- Część I Wprowadzenie
- Część II Typy i operacje
- Część III Instrukcja i składnia
- Część IV Funkcje i generatory
- Część V Moduły i pakiety
- Część VI Klasy i programowanie zorientowane obiektowo
- Część VII Wyjątki oraz narzędzia
- O autorze
- Kolofon
Helion - inne książki
-
Nowość Promocja
Ta książka stanowi twardy dowód, że matematyka jest elastyczna, kreatywna i radosna. Potraktuj ją jako fascynującą podróż przez świat matematyki abstrakcyjnej do teorii kategorii. Przekonaj się, że bez formalnej wiedzy w tej dziedzinie możesz rozwinąć umiejętność matematycznego myślenia. Abstrakcyjne idee matematyczne pomogą Ci inaczej spojrzeć na aktualne wydarzenia, kwestie sprawiedliwości społecznej i przywilejów społecznych czy nawet na COVID-19.- PDF + ePub + Mobi
- Druk 29 pkt
(27,90 zł najniższa cena z 30 dni)
29.49 zł
59.00 zł (-50%) -
Nowość Promocja
Dzięki tej przystępnej książce, przeznaczonej dla programistów i badaczy, zrozumiesz podstawy techniczne modeli LLM. Dowiesz się, do czego można je zastosować, i odkryjesz elegancję ich architektury. Nauczysz się praktycznego korzystania z frameworka LangChain, zaprojektowanego do tworzenia responsywnych aplikacji. Dowiesz się, jak dostrajać model, jak zadawać mu pytania, poznasz także sprawdzone metody wdrażania i monitorowania środowisk produkcyjnych, dzięki czemu łatwo zbudujesz narzędzia do pisania, zaawansowane roboty konwersacyjne czy nowatorskie pomoce dla programistów. Liczne praktyczne przykłady i fragmenty kodu ułatwią Ci nie tylko przyswojenie podstaw, ale także używanie modeli LLM w innowacyjny i odpowiedzialny sposób.- PDF + ePub + Mobi
- Druk 39 pkt
(37,89 zł najniższa cena z 30 dni)
39.50 zł
79.00 zł (-50%) -
Nowość Promocja
W tej niezwykle pragmatycznej książce, przeznaczonej dla dyrektorów technicznych, praktyków uczenia maszynowego, twórców aplikacji, analityków biznesowych, inżynierów i badaczy danych, znajdziesz skuteczne techniki używania sztucznej inteligencji. Zaznajomisz się z cyklem życia projektu opartego na generatywnej AI i jej zastosowaniami, a także metodami doboru i dostrajania modeli, generowania danych wspomaganego wyszukiwaniem, uczenia przez wzmacnianie na podstawie informacji zwrotnych od człowieka, kwantyzacji, optymalizacji i wdrażania modeli. Poznasz szczegóły różnych typów modeli, między innymi dużych językowych (LLM), multimodalnych generujących obrazy (Stable Diffusion) i odpowiadających na pytania wizualne (Flamingo/IDEFICS).- PDF + ePub + Mobi
- Druk 39 pkt
(37,89 zł najniższa cena z 30 dni)
39.50 zł
79.00 zł (-50%) -
Nowość Promocja
Na rynku książek poświęconych analizie biznesowej w sektorze IT dostępnych jest kilka pozycji. Zawierają one informacje na temat praktyk, narzędzi i podejścia stosowanego w tej dziedzinie. Dotychczas jednak brakowało kompendium, które byłoby praktycznym przewodnikiem zbierającym doświadczenia z różnych projektów, firm i od ekspertów podchodzących w odmienny sposób do analizy biznesowej.- PDF + ePub + Mobi
- Druk 44 pkt
(39,90 zł najniższa cena z 30 dni)
44.50 zł
89.00 zł (-50%) -
Nowość Promocja
Pierwsza była wirtualizacja: oprogramowanie symuluje istnienie zasobów logicznych korzystających z zasobów fizycznych. Po niej przyszła konteneryzacja, polegająca na tworzeniu obrazów - kopii danych - zawierających wszystkie pliki potrzebne do uruchomienia danej aplikacji. Środowiska produkcyjne z obu korzystają równolegle, ale to konteneryzacja stała się swojego rodzaju rewolucją w sektorze IT. Pozwoliła bowiem na sprawniejsze wdrażanie mikroserwisów, a także na optymalizację kosztów działania wielu aplikacji.- PDF + ePub + Mobi
- Druk 19 pkt
(17,90 zł najniższa cena z 30 dni)
19.95 zł
39.90 zł (-50%) -
Nowość Promocja
FPGA pochodzi od angielskiego field-programmable gate array. Polski odpowiednik to: bezpośrednio programowalna macierz bramek. FPGA jest rodzajem programowalnego układu logicznego. Ma tę samą funkcjonalność co układ scalony, tyle że może być wielokrotnie programowany bez demontażu. Z tego powodu znajduje zastosowanie tam, gdzie wymagana jest możliwość zmiany działania, na przykład w satelitach kosmicznych. Budujesz, instalujesz w urządzeniu docelowym, a potem modyfikujesz układ w zależności od potrzeb. Brzmi praktycznie, prawda?- Druk 24 pkt
(22,90 zł najniższa cena z 30 dni)
24.95 zł
49.90 zł (-50%) -
Nowość Promocja
Ta książka ułatwi Ci zgłębienie koncepcji kryjących się za działaniem nowoczesnych baz danych. Dzięki niej zrozumiesz, w jaki sposób struktury dyskowe różnią się od tych w pamięci i jak działają algorytmy efektywnego utrzymywania struktur B drzewa na dysku. Poznasz implementacje pamięci masowej o strukturze dziennika. Znajdziesz tu również wyjaśnienie zasad organizacji węzłów w klaster baz danych i specyfiki środowisk rozproszonych. Dowiesz się, jak algorytmy rozproszone poprawiają wydajność i stabilność systemu i jak uzyskać ostateczną spójność danych. Ponadto w książce zaprezentowano koncepcje antyentropii i plotek, służące do zapewniania zbieżności i rozpowszechniania danych, a także mechanizm transakcji utrzymujący spójność logiczną bazy.- PDF + ePub + Mobi
- Druk 44 pkt
(39,90 zł najniższa cena z 30 dni)
44.50 zł
89.00 zł (-50%) -
Nowość Promocja
Trudno wyobrazić sobie dzisiejszy świat bez możliwości operowania na danych - tym samym bez arkuszy kalkulacyjnych, do których każdy z nas ma dostęp w swoich komputerach. Najpopularniejszy z nich, czyli Excel, jest masowo używany zarówno w firmach, jak i instytucjach publicznych, ale także w gospodarstwach domowych.- PDF + ePub + Mobi
- Druk 19 pkt
(17,90 zł najniższa cena z 30 dni)
19.95 zł
39.90 zł (-50%) -
Nowość Promocja
Wprowadzenie obserwowalności do systemów jest wyzwaniem technicznym i kulturowym. Dzięki tej praktycznej książce zrozumiesz wartość obserwowalnych systemów i nauczysz się praktykować programowanie sterowane obserwowalnością. Przekonasz się, że dzięki jej wdrożeniu zespoły mogą szybko i bez obaw dostarczać kod, identyfikować wartości odstające i nietypowe zachowania, a ponadto lepiej zrozumieją doświadczenia użytkownika. Znajdziesz tu szczegółowe wyjaśnienia, co jest potrzebne do uzyskania wysokiej obserwowalności, a także szereg wskazówek, jak ulepszyć istniejące rozwiązania i pomyślnie dokonać migracji ze starszych narzędzi, takich jak wskaźniki, monitorowanie i zarządzanie dziennikami. Dowiesz się również, jaki wpływ ma obserwowalność systemu na kulturę organizacji ― i odwrotnie.- PDF + ePub + Mobi
- Druk 34 pkt
(32,90 zł najniższa cena z 30 dni)
34.50 zł
69.00 zł (-50%) -
Nowość Promocja
Ta książka jest oficjalnym przewodnikiem po języku programowania systemów Rust, udostępnianym na licencji open source. Dzięki niej nauczysz się pisać szybsze i bardziej niezawodne oprogramowanie. Dowiesz się również, jak zapewnić sobie kontrolę nad niskopoziomowymi szczegółami wraz z wysokopoziomową ergonomią, co pozwoli Ci na zwiększenie produktywności i uniknięcie trudności związanych z językami niskiego poziomu. Oprócz przystępnie przekazanej wiedzy i niezliczonych przykładów kodu w książce znalazły się trzy rozdziały poświęcone budowaniu kompletnych projektów: gry w zgadywanie liczb, rustowej implementacji narzędzia wiersza poleceń i serwera wielowątkowego.- PDF + ePub + Mobi
- Druk 64 pkt
(39,90 zł najniższa cena z 30 dni)
64.50 zł
129.00 zł (-50%)
Dzięki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep@ebookpoint.pl
Książka drukowana
Oceny i opinie klientów: Python. Wprowadzenie. Wydanie V Mark Lutz (75) Weryfikacja opinii następuje na podstawie historii zamowień na koncie Użytkownika umiejszczającego opinię.
(24)
(23)
(13)
(6)
(2)
(7)
więcej opinii