Wcześniejsze doświadczenie nie jest wymagane, aby nauczyć się programowania w Pythonie
Chcesz się nauczyć programować? Świetna decyzja! Wybierz język obiektowy, łatwy w użyciu, z przejrzystą składnią. Python będzie wprost doskonały! Rozwijany od ponad 20 lat, jest dojrzałym językiem, pozwalającym tworzyć zaawansowane aplikacje dla różnych systemów operacyjnych. Ponadto posiada system automatycznego zarządzania pamięcią, który zdejmuje z programisty obowiązek panowania nad tym skomplikowanym obszarem.
Jeżeli zdecydowałeś się na naukę programowania w tym języku, to przyszła pora na wybór książki. Ta, którą trzymasz w rękach, będzie strzałem w dziesiątkę! Sięgnij po nią i przekonaj się, jak skonfigurować swoje środowisko pracy i rozpocząć przygodę z Pythonem. Z kolejnych rozdziałów dowiesz się, co to są typy proste, zmienne, instrukcje warunkowe, pętle oraz listy. Ponadto nauczysz się tworzyć listy i funkcje oraz obsługiwać wyjątki i korzystać z plików. Gdy już zbudujesz fundamenty wiedzy na temat języka Python, przejdziesz do bardziej zaawansowanych zagadnień. Programowanie obiektowe, tworzenie grafiki oraz graficznego interfejsu użytkownika, tworzenie animacji i efektów dźwiękowych to tylko niektóre z poruszanych tematów. Książka ta jest obowiązkową lekturą dla wszystkich osób, które zamierzają opanować język Python!
Dzięki tej książce nauczysz się:
tworzyć, wycinać i indeksować łańcuchy znaków,
definiować funkcje,
odczytywać (zapisywać) dane z (do) plików tekstowych,
tworzyć duszki i manipulować nimi,
stawiać czoło programowaniu obiektowemu,
tworzyć interfejs GUI,
posługiwać się dźwiękiem i muzyką oraz tworzyć animacje.
Co znajduje się na stronie internetowej?
instalator Windows Pythona 3.1.1,
instalator Windows pakietu Pygame 1.9.1 do Pythona 3.1.x,
silnik gier Livewires,
Twój przewodnik po języku Python!
Author(s): Michael Dawson
Edition: 3
Publisher: Helion
Year: 2014
Language: Polish
Pages: 432
Spis treści......Page 5
O autorze......Page 11
Wstęp......Page 13
Analiza programu Koniec gry......Page 15
Co warto wiedzieć o Pythonie?......Page 16
Python jest językiem obiektowym......Page 17
Python ma silne wsparcie ze strony społeczności......Page 18
Instalacja Pythona w systemie Windows......Page 19
Wprowadzenie do IDLE......Page 20
Programowanie w trybie interaktywnym......Page 21
Programowanie w trybie skryptowym......Page 24
Powrót do programu Koniec gry......Page 26
Używanie komentarzy......Page 27
Czekanie na reakcję użytkownika......Page 28
Sprawdź swoje umiejętności......Page 29
Wprowadzenie do programu Nieistotne fakty......Page 31
Prezentacja programu Koniec gry 2.0......Page 32
Wypisywanie wielu wartości......Page 34
Tworzenie łańcuchów w potrójnych cudzysłowach......Page 35
Używanie sekwencji specjalnych w łańcuchach znaków......Page 36
Prezentacja programu Zabawne podziękowania......Page 37
Wstawianie znaku cudzysłowu......Page 38
Wywołanie sygnału dzwonka systemowego......Page 39
Prezentacja programu Głupie łańcuchy......Page 40
Konkatenacja łańcuchów......Page 41
Prezentacja programu Zadania tekstowe......Page 42
Stosowanie operatorów matematycznych......Page 44
Prezentacja programu Pozdrawiacz......Page 45
Tworzenie zmiennych......Page 46
Nazwy zmiennych......Page 47
Prezentacja programu Osobisty pozdrawiacz......Page 48
Używanie instrukcji input()......Page 49
Używanie metod łańcucha......Page 50
Prezentacja programu Manipulacje cytatami......Page 51
Tworzenie nowych łańcuchów za pomocą metod łańcucha......Page 52
Prezentacja programu Uczestnik funduszu powierniczego — niepoprawna wersja......Page 54
Znajdowanie błędów logicznych......Page 55
Prezentacja programu Uczestnik funduszu powierniczego — poprawna wersja......Page 56
Konwersja łańcuchów na liczby całkowite......Page 57
Używanie operatorów rozszerzonego przypisania......Page 58
Utworzenie komentarzy początkowych......Page 59
Pięciokrotne wypisanie imienia......Page 60
Podsumowanie......Page 61
Sprawdź swoje umiejętności......Page 62
Wprowadzenie do gry Jaka to liczba?......Page 63
Prezentacja programu Rzut kośćmi......Page 64
Import modułu random......Page 65
Używanie funkcji randrange()......Page 66
Prezentacja programu Hasło......Page 67
Instrukcja if......Page 68
Omówienie operatorów porównania......Page 69
Używanie wcięć do tworzenia bloków kodu......Page 70
Prezentacja programu Udzielony-odmówiony......Page 71
Prezentacja programu Komputer nastrojów......Page 73
Klauzula elif......Page 75
Tworzenie pętli while......Page 76
Prezentacja programu Symulator trzylatka......Page 77
Pętla while......Page 78
Aktualizacja zmiennej (wartownika)......Page 79
Prezentacja programu Przegrana bitwa......Page 80
Śledzenie programu......Page 81
Tworzenie warunków, które mogą przyjąć wartość False......Page 82
Prezentacja programu Maitre D’......Page 83
Interpretowanie dowolnej wartości jako prawdy lub fałszu......Page 85
Prezentacja programu Wybredny licznik......Page 86
Kiedy należy stosować instrukcje break i continue?......Page 87
Prezentacja programu Ekskluzywna sieć......Page 88
Operator logiczny not......Page 90
Operator logiczny and......Page 91
Operator logiczny or......Page 92
Tworzenie algorytmów przy użyciu pseudokodu......Page 93
Stopniowe udoskonalanie algorytmów......Page 94
Projektowanie programu......Page 95
Utworzenie pętli zgadywania......Page 96
Sprawdź swoje umiejętności......Page 97
Wprowadzenie do programu Wymieszane litery......Page 99
Prezentacja programu Zwariowany łańcuch......Page 100
Działanie pętli for......Page 101
Prezentacja programu Licznik......Page 102
Liczenie do przodu......Page 103
Liczenie co pięć......Page 104
Prezentacja programu Analizator komunikatów......Page 105
Użycie funkcji len()......Page 106
Indeksowanie łańcuchów......Page 107
Prezentacja programu Dostęp swobodny......Page 108
Używanie dodatnich numerów pozycji......Page 109
Dostęp do wybranego losowo elementu łańcucha......Page 110
Niemutowalność łańcuchów......Page 111
Prezentacja programu Bez samogłosek......Page 113
Tworzenie stałych......Page 114
Tworzenie nowych łańcuchów z już istniejących......Page 115
Prezentacja programu Krajacz pizzy......Page 116
Wycinanie......Page 118
Korzystanie ze skrótów przy wycinaniu......Page 119
Prezentacja programu Inwentarz bohatera......Page 120
Tworzenie krotki zawierającej elementy......Page 122
Wykorzystywanie krotek......Page 123
Początek programu......Page 124
Stosowanie operatora in do krotek......Page 125
Wycinanie krotek......Page 126
Konkatenacja krotek......Page 127
Początek programu......Page 128
Skonfigurowanie pętli......Page 129
Przywitanie gracza......Page 130
Podsumowanie......Page 131
Sprawdź swoje umiejętności......Page 132
Wprowadzenie do gry Szubienica......Page 133
Tworzenie listy......Page 135
Konkatenacja list......Page 137
Przypisanie elementowi listy nowej wartości poprzez indeks......Page 138
Usunięcie wycinka listy......Page 139
Prezentacja programu Najlepsze wyniki......Page 140
Zakończenie programu......Page 141
Usunięcie wyniku......Page 142
Czekanie na decyzję użytkownika......Page 143
Kiedy należy używać krotek zamiast list?......Page 144
Prezentacja programu Najlepsze wyniki 2.0......Page 145
Uzyskiwanie dostępu do elementów zagnieżdżonych......Page 146
Wstępne ustawienia programu......Page 147
Dodanie wyniku poprzez dołączenie do listy zagnieżdżonej krotki......Page 148
Referencje współdzielone......Page 149
Wprowadzenie do programu Translator slangu komputerowego......Page 152
Uzyskiwanie dostępu do wartości słownika......Page 153
Skonfigurowanie programu......Page 155
Dodanie pary klucz-wartość......Page 156
Wymiana pary klucz-wartość......Page 157
Dokończenie programu......Page 158
Powrót do gry Szubienica......Page 159
Tworzenie stałych......Page 160
Pobranie litery wprowadzonej przez gracza......Page 163
Zakończenie gry......Page 164
Sprawdź swoje umiejętności......Page 165
Wprowadzenie do gry Kółko i krzyżyk......Page 167
Prezentacja programu Instrukcja......Page 169
Definiowanie funkcji......Page 170
Pojęcie abstrakcji......Page 171
Prezentacja programu Pobierz i zwróć......Page 172
Otrzymywanie informacji poprzez parametry......Page 173
Pojęcie hermetyzacji......Page 174
Otrzymywanie i zwracanie wartości w tej samej funkcji......Page 175
Wykorzystanie argumentów nazwanych i domyślnych wartości parametrów......Page 176
Prezentacja programu Życzenia urodzinowe......Page 177
Używanie parametrów pozycyjnych i argumentów nazwanych......Page 178
Używanie domyślnych wartości parametrów......Page 179
Pojęcie zakresu......Page 181
Prezentacja programu Globalny zasięg......Page 182
Odczytywanie wartości zmiennej globalnej wewnątrz funkcji......Page 183
Zmiana wartości zmiennej globalnej z wnętrza funkcji......Page 184
Projektowanie gry Kółko i krzyżyk......Page 185
Funkcja display_instruct()......Page 188
Funkcja new_board()......Page 189
Funkcja legal_moves()......Page 190
Funkcja winner()......Page 191
Funkcja computer_move()......Page 192
Funkcja main()......Page 195
Podsumowanie......Page 196
Sprawdź swoje umiejętności......Page 197
Wprowadzenie do programu Turniej wiedzy......Page 199
Prezentacja programu Odczytaj to......Page 200
Otwarcie i zamknięcie pliku......Page 202
Odczytywanie znaków z pliku......Page 203
Odczytywanie znaków z wiersza......Page 204
Odczytywanie zawartości pliku w pętli......Page 205
Prezentacja programu Zapisz to......Page 206
Zapisywanie listy łańcuchów do pliku......Page 207
Prezentacja programu Zamarynuj to......Page 209
Marynowanie danych i zapisywanie ich do pliku......Page 210
Odczytywanie danych z pliku i ich odmarynowanie......Page 211
Wykorzystanie półki do przechowywania zamarynowanych danych......Page 212
Wykorzystanie półki do przywrócenia zamarynowanych danych......Page 213
Prezentacja programu Obsłuż to......Page 214
Specyfikacja typu wyjątku......Page 215
Obsługa wielu typów wyjątków......Page 217
Powrót do gry Turniej wiedzy......Page 218
Objaśnienie struktury pliku z danymi......Page 219
Funkcja next_line()......Page 220
Funkcja welcome()......Page 221
Sprawdzenie odpowiedzi......Page 222
Podsumowanie......Page 223
Sprawdź swoje umiejętności......Page 224
Wprowadzenie do programu Opiekun zwierzaka......Page 225
Podstawy programowania obiektowego......Page 227
Prezentacja programu Prosty zwierzak......Page 228
Definiowanie metody......Page 229
Używanie konstruktorów......Page 230
Prezentacja programu Zwierzak z konstruktorem......Page 231
Wykorzystywanie atrybutów......Page 232
Prezentacja programu Zwierzak z atrybutem......Page 233
Inicjalizacja atrybutów......Page 234
Uzyskiwanie dostępu do atrybutów......Page 235
Wykorzystanie atrybutów klasy i metod statycznych......Page 236
Prezentacja programu Zwierzak z klasą......Page 237
Uzyskiwanie dostępu do atrybutu klasy......Page 238
Tworzenie metody statycznej......Page 239
Hermetyzacja obiektów......Page 240
Tworzenie atrybutów prywatnych......Page 241
Dostęp do atrybutów prywatnych......Page 242
Dostęp do metod prywatnych......Page 243
Respektowanie prywatności obiektu......Page 244
Prezentacja programu Zwierzak z właściwością......Page 245
Tworzenie właściwości......Page 246
Dostęp do właściwości......Page 248
Klasa Critter......Page 249
Utworzenie systemu menu......Page 251
Podsumowanie......Page 252
Sprawdź swoje umiejętności......Page 253
Wprowadzenie do gry Blackjack......Page 255
Wysyłanie i odbieranie komunikatów......Page 256
Prezentacja programu Pogromca Obcych......Page 257
Przesyłanie komunikatu......Page 258
Utworzenie klasy Card......Page 259
Operowanie obiektami klasy Card......Page 261
Grupowanie obiektów klasy Card przy użyciu obiektu klasy Hand......Page 262
Rozszerzanie klasy poprzez dziedziczenie......Page 263
Prezentacja programu Gra w karty 2.0......Page 264
Dziedziczenie po klasie bazowej......Page 265
Rozszerzenie klasy pochodnej......Page 266
Korzystanie z klasy pochodnej......Page 267
Prezentacja programu Gra w karty 3.0......Page 269
Przesłonięcie metod klasy bazowej......Page 270
Wywoływanie metod klasy bazowej......Page 271
Używanie klas pochodnych......Page 272
Tworzenie modułów......Page 273
Pisanie modułów......Page 274
Użycie zaimportowanych funkcji i klas......Page 276
Moduł karty......Page 277
Projektowanie klas......Page 279
Import modułów. Karty i gry......Page 280
Klasa BJ_Deck......Page 281
Klasa BJ_Hand......Page 282
Klasa BJ_Player......Page 283
Klasa BJ_Game......Page 284
Podsumowanie......Page 287
Sprawdź swoje umiejętności......Page 288
Wprowadzenie do programu Mad Lib......Page 289
Przyjrzenie się interfejsowi GUI......Page 291
Programowanie sterowane zdarzeniami......Page 292
Prezentacja programu Prosty interfejs GUI......Page 293
Utworzenie okna głównego......Page 295
Prezentacja programu Metkownica......Page 296
Utworzenie ramki......Page 297
Prezentacja programu Leniwe przyciski......Page 298
Utworzenie przycisków......Page 299
Prezentacja programu Leniwe przyciski 2......Page 300
Zdefiniowanie konstruktora......Page 301
Tworzenie obiektu klasy Application......Page 302
Rozpoczęcie programu......Page 303
Dokończenie programu......Page 304
Prezentacja programu Długowieczność......Page 305
Umiejscowienie widżetu za pomocą menedżera układu Grid......Page 306
Utworzenie widżetu Text......Page 308
Pobieranie i wstawianie tekstu w widżetach xEntry i Text......Page 309
Prezentacja programu Wybór filmów......Page 310
Dopuszczenie, aby jedyną referencję do widżetu utrzymywał jego obiekt nadrzędny......Page 311
Utworzenie pól wyboru......Page 312
Wykorzystanie przycisków opcji......Page 314
Rozpoczęcie programu......Page 315
Utworzenie przycisków opcji......Page 316
Pobranie wartości z grupy przycisków opcji......Page 317
Konstruktor klasy Application......Page 318
Metoda create_widgets() klasy Application......Page 319
Metoda tell_story() klasy Application......Page 320
Główna część programu......Page 321
Sprawdź swoje umiejętności......Page 322
Wprowadzenie do gry Pizza Panic......Page 323
Tworzenie okna graficznego......Page 325
Prezentacja programu Nowe okno graficzne......Page 326
Inicjalizacja ekranu graficznego......Page 327
Ustawienie obrazu tła......Page 328
Prezentacja programu Obraz tła......Page 329
Ustawienie tła......Page 330
Układ współrzędnych ekranu graficznego......Page 331
Prezentacja programu Duszek pizzy......Page 332
Załadowanie obrazu potrzebnego do utworzenia obiektu klasy Sprite......Page 333
Dodanie obiektu klasy Sprite do ekranu......Page 335
Prezentacja programu Wysoki wynik......Page 336
Dodanie obiektu klasy Text do ekranu......Page 338
Prezentacja programu Wygrałeś......Page 339
Utworzenie obiektu klasy Message......Page 340
Dodanie obiektu klasy Message do ekranu......Page 341
Prezentacja programu Pizza w ruchu......Page 342
Ustawienie wartości prędkości ruchu pizzy......Page 343
Program Sprężysta pizza......Page 344
Przesłonięcie metody update()......Page 345
Dokończenie programu......Page 346
Prezentacja programu Patelnia w ruchu......Page 347
Odczytywanie współrzędnych x i y myszy......Page 348
Dokończenie programu......Page 349
Rozpoczęcie programu......Page 350
Dokończenie programu......Page 352
Rozpoczęcie programu......Page 353
Klasa Pan......Page 354
Klasa Pizza......Page 355
Klasa Chef......Page 357
Funkcja main()......Page 359
Sprawdź swoje umiejętności......Page 360
Wprowadzenie do gry Astrocrash......Page 361
Prezentacja programu Odczytaj klawisz......Page 363
Testowanie stanu klawiszy......Page 364
Obracanie duszka......Page 365
Prezentacja programu Obróć duszka......Page 366
Wykorzystanie właściwości angle obiektu klasy Sprite......Page 367
Prezentacja programu Eksplozja......Page 368
Rozpoczęcie programu......Page 369
Utworzenie obiektu klasy Animation......Page 370
Prezentacja programu Dźwięk i muzyka......Page 371
Praca z dźwiękami......Page 372
Praca z muzyką......Page 374
Dokończenie programu......Page 375
Elementy gry......Page 376
Program Astrocrash01......Page 377
Rozpoczęcie programu......Page 378
Klasa Asteroid......Page 379
Obracanie statku......Page 380
Klasa Ship......Page 381
Import modułu math......Page 382
Modyfikacja metody update() klasy Ship......Page 383
Modyfikacja metody update() klasy Ship......Page 385
Klasa Missile......Page 386
Dodanie stałej klasowej do klasy Ship......Page 388
Modyfikacja metody update() klasy Ship......Page 389
Modyfikacja metody update() klasy Missile......Page 390
Dodanie metody die() do klasy Missile......Page 391
Dodanie metody die() do klasy Asteroid......Page 392
Program Astrocrash07......Page 393
Klasa Collider......Page 394
Modyfikacja klasy Asteroid......Page 395
Klasa Explosion......Page 396
Dodanie poziomów gry, rejestracji wyników oraz tematu muzycznego......Page 397
Import modułu color......Page 398
Klasa Game......Page 399
Modyfikacja metody die() klasy Asteroid......Page 403
Modyfikacja metody update() klasy Ship......Page 404
Podsumowanie......Page 405
Sprawdź swoje umiejętności......Page 406
Pliki archiwów......Page 407
Dodatek B. Opis pakietu livewires......Page 408
Klasy modułu games......Page 409
Klasa Screen......Page 410
Klasa Sprite......Page 411
Klasa Text......Page 413
Klasa Message......Page 414
Klasa Animation......Page 415
Klasa Mouse......Page 416
Funkcje modułu games......Page 417
Stałe modułu games......Page 418
Stałe modułu color......Page 422
Skorowidz......Page 423