Facebook - konwersja

  • nowość
  • promocja

Python. Wprowadzenie - ebook

Wydawnictwo:
Format:
MOBI
Data wydania:
13 listopada 2025
16915 pkt
punktów Virtualo

Python. Wprowadzenie - ebook

Nic dziwnego, że programiści kochają Pythona: jest wszechstronny, czytelny, darmowy i działa na każdej platformie. Można się go stosunkowo szybko nauczyć ... ale jest jeden warunek: aby w pełni wykorzystać jego możliwości, trzeba zdobyć solidne podstawy, zrozumieć kilka trudniejszych koncepcji i... dużo ćwiczyć, pisząc własny kod.

Ta książka stanowi kompleksowe i obszerne wprowadzenie do języka Python. Pomoże Ci opanować jego podstawy i przygotuje do praktycznego zastosowania nabytej wiedzy. To wydanie zostało zaktualizowane i rozszerzone, aby odzwierciedlić zmiany zachodzące w świecie Pythona. Pominięto omówienie nieaktualnej wersji 2.X,opisano nowe narzędzia, dodane do Pythona w wersji 3.12, a także innych jego edycji, które są dziś szeroko używane. Naukę ułatwią Ci liczne quizy, ćwiczenia, pomocne ilustracje i przykładowe fragmenty kodu. To idealne kompendium dla każdego, kto chce szybko zacząć programować w Pythonie i tworzyć wydajny kod wysokiej jakości.

W książce:

  • ogólny model składni Pythona
  • wbudowane typy obiektów i ich przetwarzanie
  • stosowanie funkcji i organizowanie kodu w modułach i pakietach
  • obsługa wyjątków i inne narzędzia programistyczne
  • zaawansowane narzędzia Pythona, między innymi dekoratory, deskryptory i metaklasy
  • kod idiomatyczny, który działa na różnych platformach

Daj się opleść Pythonowi - i wejdź do świata kodu !

Spis treści

Przedmowa

Część I. Wprowadzenie

  • 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ą zatem wady języka Python?
    • Kto dzisiaj używa Pythona?
    • Co mogę zrobić za pomocą Pythona?
      • Programowanie systemowe
      • Graficzne interfejsy użytkownika (GUI) i interfejsy użytkownika (UI)
      • Skrypty internetowe
      • Integracja komponentów
      • Dostęp do baz danych
      • Szybkie prototypowanie
      • Programowanie numeryczne i naukowe
      • I więcej: sztuczna inteligencja, gry, przetwarzanie obrazu, wyszukiwanie danych, testowanie, Excel, aplikacje.
    • Jakie są techniczne mocne strony Pythona?
      • Jest zorientowany obiektowo i funkcyjny
      • Jest darmowy i otwarty
      • 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ę
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 2. Jak Python wykonuje programy?
    • Wprowadzenie do interpretera Pythona
    • Wykonywanie programu
      • Z punktu widzenia programisty
      • Z punktu widzenia Pythona
    • Warianty modeli wykonywania
      • Alternatywne implementacje Pythona
      • Samodzielne pliki wykonywalne
      • Przyszłe możliwości
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 3. Jak uruchamia się programy?
    • Instalacja Pythona
    • Interaktywny kod
      • Uruchamianie interaktywnego środowiska REPL
      • Gdzie uruchamiać programy - katalogi z kodem źródłowym
      • Czego nie wpisywać - znaki zachęty i komentarze
      • Inne środowiska REPL Pythona
      • Interaktywne wykonywanie kodu
      • Do czego służy sesja interaktywna?
    • Pliki źródłowe
      • Pierwszy skrypt
      • Wykonywanie plików z poziomu wiersza poleceń powłoki
      • Sposoby użycia wiersza poleceń
    • Inne sposoby uruchamiania plików
      • Klikanie ikon plików
      • Interfejs użytkownika środowiska IDLE
      • Inne środowiska IDE
      • Aplikacje na smartfony
      • WebAssembly dla przeglądarek
      • Notatniki Jupyter do celów naukowych
      • Kompilatory AOT dla zwiększenia szybkości
      • Uruchamianie kodu w kodzie
      • Inne opcje wykonywania kodu
    • Jaką opcję wybrać?
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
    • Sprawdź swoją wiedzę - ćwiczenia do części I
      • Debugowanie kodu w Pythonie

Część II. Obiekty i operacje

  • 4. Wprowadzenie do obiektów Pythona
    • Hierarchia pojęć w Pythonie
    • Dlaczego korzystamy z obiektó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
    • 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
    • Krotki
      • Do czego służą krotki?
    • Pliki
      • Pliki tekstowe Unicode i binarne
      • Inne narzędzia podobne do plików
    • Inne typy podstawowe
      • Zbiory
      • Wartości logiczne i obiekt None
      • Typy
      • Podpowiedzi typów
      • Klasy definiowane przez użytkownika
      • I wszystko inne
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 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
      • Operatory porównania
      • Operatory dzielenia
      • Precyzja liczb całkowitych
      • Liczby zespolone
      • Notacja szesnastkowa, ósemkowa i dwójkowa
      • Operacje na poziomie bitów
      • Znaki podkreślenia jako separatory w liczbach
      • Inne wbudowane narzędzia numeryczne
    • Inne typy liczbowe
      • Typ Decimal (liczby dziesiętne)
      • Typ Fraction (liczby ułamkowe)
      • Zbiory
      • Wartości Boolean
    • Rozszerzenia numeryczne
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 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
    • Podpowiedzi typów: opcjonalne, nieużywane i po co?
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 7. Łańcuchy znaków
    • Ł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
      • Narzędzia do konwersji łańcuchów znaków
      • Modyfikowanie łańcuchów znaków - część I: działania na sekwencjach
    • Metody łańcuchów znaków
      • Składnia wywoływania metod
      • Metody typów znakowych
      • Modyfikowanie łańcuchów znaków - część II: metody łańcuchów znaków
      • Więcej metod łańcuchów znaków - analiza składniowa tekstu
      • Inne często używane metody łańcuchów znaków
    • Formatowanie łańcuchów znaków - triatlon
      • Opcje formatowania łańcuchów znaków
      • Formatowanie z użyciem wyrażeń formatujących
      • Formatowanie łańcuchów z użyciem metody format
      • Podstawy
      • Zaawansowana składnia wywołań metody format
      • Literał formatowania f-string
      • A zwycięzcą jest.
    • 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
  • 8. Listy i słowniki
    • Listy
    • Listy w akcji
      • Podstawowe operacje na listach
      • Indeksowanie i wycinki
      • Modyfikacja list w miejscu
      • Iteracje po listach i składanie list
    • Słowniki
    • Słowniki w akcji
      • Podstawowe operacje na słownikach
      • Modyfikacja słowników w miejscu
      • Inne metody słowników
      • Inne sposoby tworzenia słowników
      • Słowniki składane
      • Kolejność wstawiania kluczy
      • Operator "sumy" dla słowników
      • Przykład: baza danych o książkach
      • Uwagi na temat korzystania ze słowników
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 9. Krotki, pliki i wszystko inne
    • Krotki
      • Krotki w akcji
      • Dlaczego istnieją listy i krotki?
      • Repetytorium: rekordy - krotki nazwane
    • Pliki
      • Otwieranie plików
      • Wykorzystywanie plików
      • Pliki w akcji
      • Pliki tekstowe i binarne - krótka historia
      • Przechowywanie obiektów Pythona w plikach i ich przetwarzanie
      • Przechowywanie natywnych obiektów Pythona - moduł pickle
      • Przechowywanie obiektów Pythona w formacie JSON
      • Przechowywanie obiektów za pomocą innych narzędzi
      • 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ównywanie słowników
      • Prawda czy fałsz, czyli znaczenie True i False w Pythonie
    • 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 II

Część III. Instrukcje i składnia

  • 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?
      • Skąd bierze się składnia z użyciem wcięć?
      • Kilka przypadków specjalnych
    • 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
      • Kod zagnieżdżony na trzy poziomy głębokości
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 11. Przypisania, wyrażenia i wyświetlanie
    • Instrukcje przypisania
      • Formy instrukcji przypisania
      • Podstawowe przypisanie
      • Przypisanie sekwencji
      • Rozszerzona składnia rozpakowania sekwencji w Pythonie 3.x
      • Przypisanie z wieloma celami
      • Przypisania rozszerzone
      • Wyrażenia przypisania nazwanego
      • Reguły dotyczące nazw zmiennych
    • Instrukcje wyrażeń
      • Instrukcje wyrażeń i modyfikacje w miejscu
    • Polecenia print
      • Funkcja print
      • Przekierowanie strumienia wyjściowego
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 12. Testy if i reguły składni
    • Instrukcje if
      • Ogólny format
      • Proste przykłady
      • Instrukcja wielokrotnego wyboru
    • Instrukcje match
      • Podstawowe użycie match
      • Zaawansowane użycie match
    • Reguły składni Pythona raz jeszcze
      • Ograniczniki bloków - reguły tworzenia wcięć
      • Ograniczniki instrukcji - wiersze i znaki kontynuacji
      • Kilka przypadków specjalnych
    • Testy prawdziwości i testy logiczne
    • Wyrażenie trójargumentowe if/else
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 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
    • Pętle for
      • Ogólny format
      • Przykłady
    • Techniki tworzenia pętli
      • Pętle z licznikami - range
      • Skanowanie sekwencji - while, range, 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
      • Generowanie wartości przesunięcia i elementów - enumerate
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 14. Iteracje i listy składane
    • Iteracje
      • Protokół iteracyjny
      • Wbudowane funkcje iter i next
      • Inne wbudowane typy iterowalne
    • Listy składane
      • Podstawy list składanych
      • Wykorzystywanie list składanych w plikach
      • Rozszerzona składnia list składanych
      • Listy składane - zawieszenie tematu
    • Narzędzia iteracyjne
    • Inne zagadnienia związane z iteracjami
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 15. Wprowadzenie do dokumentacji
    • Źródła dokumentacji Pythona
      • Komentarze ze znakami #
      • Funkcja dir
      • Notki dokumentacyjne - __doc__
      • PyDoc - funkcja help
      • PyDoc - raporty HTML
      • Nie tylko notki docstrings - pakiet Sphinx
      • Zbiór standardowej dokumentacji
      • Zasoby internetowe
    • Często spotykane problemy programistyczne
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
    • Ćwiczenia do części III

Część IV. Funkcje i generatory

  • 16. Podstawy funkcji
    • Dlaczego używamy funkcji?
    • Tworzenie funkcji
      • Podstawowe narzędzia funkcji
      • Zaawansowane narzędzia funkcji
      • Ogólne koncepcje związane z funkcjami
      • Instrukcje def
      • Instrukcje return
      • Instrukcja def uruchamiana jest w czasie wykonywania
      • Wyrażenie lambda tworzy funkcje anonimowe
    • 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
  • 17. Zasięgi
    • Podstawy zasięgów w Pythonie
      • Reguły dotyczące zasięgów
      • Rozwiązywanie nazw - reguła LEGB
      • Przykład zasięgu
      • Zasięg wbudowany
    • Instrukcja global
      • Projektowanie programów: minimalizowanie stosowania zmiennych globalnych
      • Projektowanie programów: minimalizacja 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
    • Instrukcja nonlocal
      • Podstawy instrukcji nonlocal
      • Instrukcja nonlocal w akcji
      • Przypadki graniczne
    • Opcje zachowania stanu
      • Zmienne nonlocal - modyfikowalne, na wywołanie, LEGB
      • Zmienne globalne - modyfikowalne, ale współdzielone
      • Atrybuty funkcji - modyfikowalne, na wywołanie, jawne
      • Klasy - modyfikowalne, na wywołanie, programowanie zorientowane obiektowo
      • A zwycięzcą jest.
    • Zakresy i domyślne wartości argumentów
      • Pętle wymagają wartości domyślnych, nie zasięgów
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 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
      • Przykłady dowolnych argumentów
      • Argumenty tylko ze słowami kluczowymi
      • Argumenty tylko pozycyjne
    • Kolejność argumentów - szczegóły techniczne
      • Kolejność w definicji funkcji
      • Kolejność wywoływania
    • Przykład z funkcją obliczającą minimum
      • Pełne rozwiązanie
      • Bonus
      • Puenta
    • Przykład z uogólnionymi funkcjami działającymi na zbiorach
      • Testowanie kodu
    • Przykład z utworzeniem własnej funkcji print
      • Wykorzystywanie argumentów ze słowami kluczowymi
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 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
    • Obiekty funkcji - atrybuty, adnotacje i tym podobne
      • Obiekty "pierwszej klasy"
      • Introspekcja funkcji
      • Atrybuty funkcji
      • Adnotacje funkcji i dekoratory
    • Funkcje anonimowe - lambda
      • Podstawy wyrażeń lambda
      • Po co używamy wyrażeń lambda?
      • 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
  • 20. Listy składane i generatory
    • Listy składane - akt końcowy
      • Powtórka z list składanych
      • Przykład: listy składane i macierze
    • Funkcje i wyrażenia generatorów
      • Funkcje generatorów - yield kontra return
      • Wyrażenia generatorów - obiekty iterowalne spotykają złożenia
      • Różne ciekawostki dotyczące generatorów
    • Przykład: generowanie mieszanych sekwencji
      • Sekwencje mieszające
      • Permutacje: wszystkie możliwe kombinacje
    • Przykład: emulowanie funkcji zip i map
      • Tworzymy własną implementację funkcji map
      • Własna wersja funkcji zip i map z Pythona 2.X
    • Funkcje asynchroniczne - krótka historia
      • Podstawy funkcji asynchronicznych
      • Podsumowanie funkcji asynchronicznych
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 21. Wprowadzenie do pomiarów wydajności
    • Pomiary wydajności domowymi sposobami
      • Moduł pomiaru czasu - ujęcie pierwsze
      • Moduł pomiaru czasu - ujęcie drugie
      • Skrypt mierzący wydajność
      • Wyniki pomiarów czasu iteracji
      • Inne rozwiązania dla modułu do pomiaru czasu
    • Mierzenie czasu iteracji z wykorzystaniem modułu timeit
      • Podstawowe reguły korzystania z modułu timeit
      • Automatyczne testy wydajnościowe z użyciem modułu timeit
    • 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
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
    • Sprawdź swoją wiedzę - ćwiczenia do części IV

Część V. Moduły i pakiety

  • 22. Moduły - wprowadzenie
    • Moduły - podstawy
    • 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
    • Ścieżka wyszukiwania modułów
      • Elementy ścieżki wyszukiwania
      • Konfigurowanie ścieżki wyszukiwania
      • Lista sys.path
      • Wybór pliku modułu
      • Nietypowe ścieżki - pliki samodzielne i pakiety
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 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
      • Instrukcje import są przypisaniami
      • Równoważność instrukcji import oraz from
      • Potencjalne pułapki związane z użyciem instrukcji from
    • 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
      • Różne aspekty przeładowywania
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 24. Pakiety modułów
    • Stosowanie pakietów
      • Podstawy importowania pakietów
      • Pakiety a ustawienia ścieżki wyszukiwania
    • Tworzenie pakietów
      • Podstawowa struktura pakietów
      • Pliki __init__.py
      • Pliki __main__.py
    • Do czego służą pakiety?
      • Historia dwóch systemów
      • Role pliku inicjalizacji pakietu
    • Względne importowanie pakietów
      • Względne i bezwzględne importowanie pakietów
      • Importowanie względne - za i przeciw
      • Importy względne w działaniu
    • Pakiety przestrzeni nazw
      • Modele importowania w Pythonie
      • Uzasadnienie dla pakietów przestrzeni nazw
      • Algorytm wyszukiwania modułu
      • Pakiety przestrzeni nazw w akcji
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 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__
      • Zarządzanie dostępem do atrybutów - __getattr__ i __dir__
    • Włączanie opcji z przyszłych wersji Pythona: __future__
    • Mieszane tryby użycia - __name__ i __main__
      • Przykład: testy jednostkowe z wykorzystaniem atrybutu __name__
      • Rozszerzenie as dla instrukcji import oraz from
    • Introspekcja modułów
      • Przykład: wyświetlanie modułów za pomocą __dict__
    • 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
    • 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 V

Część VI. Klasy i programowanie zorientowane obiektowo

  • 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
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 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
    • Najprostsza klasa Pythona na świecie
      • Klasy od kuchni
      • Jeszcze kilka słów o rekordach: klasy kontra słowniki
    • Podsumowanie rozdziału
    • Sprawdź swoją wiedzę - quiz
    • Sprawdź swoją wiedzę - odpowiedzi
  • 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...
Kategoria: Programowanie
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-289-2943-2
Rozmiar pliku: 10 MB

BESTSELLERY

Menu

Zamknij