Python 3 : kompletne wprowadzenie do programowania / Mark

Transkrypt

Python 3 : kompletne wprowadzenie do programowania / Mark
Python 3 : kompletne wprowadzenie do programowania / Mark Summerfield.
- wyd. 2. – Gliwice, cop. 2010
Spis treści
O autorze
Wprowadzenie
13
15
Rozdział 1. Szybkie wprowadzenie do programowania proceduralnego
Tworzenie i uruchamianie programów Pythona
"Piękne serce" Pythona
Koncepcja 1. - rodzaje danych
Koncepcja 2. - odniesienia do obiektów
Koncepcja 3. - kolekcje rodzajów danych
Koncepcja 4. - operatory logiczne
Koncepcja 5. - polecenia kontroli przepływu programu
Koncepcja 6. - operatory arytmetyczne
Koncepcja 7. - operacje wejścia-wyjścia
Koncepcja 8. - tworzenie i wywoływanie funkcji
Przykłady
bigdigits.py
generate_grid.py
Podsumowanie
Ćwiczenia
23
24
29
29
31
33
36
40
45
48
51
53
53
56
58
61
Rozdział 2. Rodzaje danych
Identyfikatory i słowa kluczowe
Całkowite rodzaje danych
Liczby całkowite
Wartości boolowskie
Zmiennoprzecinkowe rodzaje danych
Liczby zmiennoprzecinkowe Float
Liczby zespolone Complex
Liczby Decimal
Ciągi tekstowe
Porównywanie ciągów tekstowych
Segmentowanie i poruszanie się krokami w ciągu tekstowym
Operatory i metody dotyczące ciągu tekstowego
Formatowanie ciągu tekstowego za pomocą metody str.format
Kodowanie znaków
Przykłady
quadratic.py
csv2html.py
Podsumowanie
Ćwiczenia
65
65
69
69
72
73
74
77
78
80
83
84
87
95
107
111
111
114
118
120
Rozdział 3. Kolekcje rodzajów danych
Rodzaje sekwencji
Krotki
Nazwane krotki
Listy
123
124
124
127
129
Rodzaje danych set
Set zbiór
Rodzaj danych frozenset
Rodzaje mapowania
Słowniki
Słowniki domyślne
Słowniki uporządkowane
Iteracja i kopiowanie kolekcji
Iteratory i operacje oraz funkcje iteracji
Kopiowanie kolekcji
Przykłady
generate_usernames.py
statistics.py
Podsumowanie
Ćwiczenia
137
138
142
143
143
152
153
155
155
164
166
166
169
173
175
Rozdział 4. Funkcje i struktury kontrolne
Struktury kontrolne
Konstrukcje rozgałęziające
Pętle
Obsługa wyjątków
Przechwytywanie i obsługa wyjątków
Własne wyjątki
Własne funkcje
Nazwy i dokumentujące ciągi tekstowe
Rozpakowywanie argumentu i parametru
Uzyskiwanie dostępu do zmiennych w zasięgu globalnym
Funkcja lambda
Asercje
Przykład: make_html_skeleton.py
Podsumowanie
Ćwiczenie
177
177
178
179
181
181
186
189
193
195
197
199
201
202
208
209
Rozdział 5. Moduły
Moduły i pakiety
Pakiety
Własne moduły
Ogólny opis biblioteki standardowej Pythona
Obsługa ciągów tekstowych
Programowanie wiersza polecenia
Matematyka i liczby
Data i godzina
Algorytmy i kolekcje rodzajów danych
Formaty plików, kodowania znaków i przechowywanie danych
Plik, katalog i obsługa przetwarzania
Praca w sieci i programowanie internetowe
XML
Inne moduły
Podsumowanie
Ćwiczenie
213
214
217
220
230
230
232
233
234
235
236
240
242
244
246
247
249
Rozdział 6. Programowanie zorientowane obiektowo
Podejście zorientowane obiektowo
Koncepcje i terminologia programowania zorientowanego obiektowo
Własne klasy
Atrybuty i metody
Dziedziczenie i polimorfizm
UŜywanie właściwości w celu kontrolowania dostępu do atrybutów
Tworzenie w pełni zintegrowanych rodzajów danych
Własne klasy kolekcji
Tworzenie klas agregujących kolekcje
Tworzenie klas kolekcji za pomocą agregacji
Tworzenie klas kolekcji za pomocą dziedziczenia
Podsumowanie
Ćwiczenia
251
252
253
256
257
262
264
266
279
279
286
292
299
301
Rozdział 7. Obsługa plików
Zapis i odczyt danych binarnych
Peklowanie wraz z opcjonalną konwersją
Zwykłe dane binarne wraz z opcjonalną kompresją
Zapis i przetwarzanie plików tekstowych
Zapis tekstu
Przetwarzanie tekstu
Przetwarzanie tekstu za pomocą wyraŜeń regularnych
Zapis i przetwarzanie plików XML
Drzewa elementów
Model DOM Document Object Model
Ręczny zapis XML
Przetwarzanie XML za pomocą SAX Simple API dla XML
Swobodny dostęp do plików binarnych
Ogólna klasa BinaryRecordFile
Przykład: klasy modułu BikeStock
Podsumowanie
Ćwiczenia
303
308
308
312
321
321
322
325
328
329
332
335
336
339
339
347
351
352
Rozdział 8. Zaawansowane techniki programowania
Dalsze techniki programowania proceduralnego
Rozgałęzianie za pomocą słowników
Funkcje i wyraŜenia generatora
Dynamiczne wykonywanie kodu oraz dynamiczne polecenia import
Funkcje lokalne i rekurencyjne
Dekoratory funkcji i metod
Adnotacje funkcji
Dalsze techniki programowania zorientowanego obiektowo
Kontrola dostępu do atrybutów
Funktor
MenedŜery kontekstu
Deskryptory
Dekoratory klas
Abstrakcyjne klasy bazowe
Dziedziczenie wielokrotne
Metaklasy
355
356
356
358
360
368
372
376
378
379
382
384
388
392
395
402
404
Programowanie funkcjonalne
Funkcje częściowe aplikacji
Współprogramy
Przykład: valid.py
Podsumowanie
Ćwiczenia
408
411
412
421
423
424
Rozdział 9. Usuwanie błędów, testowanie i profilowanie
Usuwanie błędów
Obsługa błędów składni
Obsługa błędów w trakcie działania programu
Naukowy sposób usuwania błędów
Testy jednostkowe
Profilowanie
Podsumowanie
427
428
429
430
434
440
446
451
Rozdział 10. Procesy i wątkowanie
UŜywanie modułu Multiprocessing
UŜywanie modułu Threading
Przykład: program wyszukiwania uŜywający wątków
Przykład: program wyszukujący powielone pliki uŜywający wątkowania
Podsumowanie
Ćwiczenia
453
454
458
460
463
468
469
Rozdział 11. Praca w sieci
Tworzenie klienta TCP
Tworzenie serwera TCP
Podsumowanie
Ćwiczenia
471
473
478
485
485
Rozdział 12. Programowanie bazy danych
Bazy danych DBM
Bazy danych SQL
Podsumowanie
Ćwiczenie
489
490
494
501
502
Rozdział 13. WyraŜenia regularne
Język wyraŜeń regularnych Pythona
Znaki i klasy znaków
Kwantyfikatory
Grupowanie i przechwytywanie
Asercje i opcje
Moduł wyraŜeń regularnych
Podsumowanie
Ćwiczenia
503
504
505
506
508
511
515
526
526
Rozdział 14. Wprowadzenie do analizy składniowej
Składnia BNF i terminologia związana z analizą składniową
Tworzenie własnych analizatorów składni
Prosta analiza składniowa danych klucz - wartość
Analiza składniowa listy odtwarzania
529
531
535
536
539
Analiza składniowa bloków języka specjalizowanego
Analiza składniowa za pomocą modułu PyParsing
Krótkie wprowadzenie do modułu PyParsing
Prosta analiza składniowa danych klucz - wartość
Analiza składniowa danych listy odtwarzania
Analiza składniowa bloków języka specjalizowanego
Analiza składni logiki pierwszego rzędu
Analiza składniowa Lex/Yacc za pomocą modułu PLY
Prosta analiza składniowa danych klucz - wartość
Analiza składniowa danych listy odtwarzania
Analiza składniowa bloków języka specjalizowanego
Analizator składni logiki pierwszego rzędu
Podsumowanie
Ćwiczenie
541
550
551
555
557
559
564
569
571
573
575
577
582
583
Rozdział 15. Wprowadzenie do programowania GUI
Programy w stylu okna dialogowego
Programy w stylu okna głównego
Tworzenie okna głównego
Tworzenie własnego okna dialogowego
Podsumowanie
Ćwiczenia
585
588
594
595
605
608
609
Epilog
611
Wybrana bibliografia
613
Skorowidz
615
oprac. BPK

Podobne dokumenty