POLECAMY
Autor:
Wydawca:
Format:
epub, mobi
Nowe, drugie wydanie bestsellerowej książki, która jest atrakcyjnym wprowadzeniem do świata programowania. Została ona całkowicie zaktualizowana, poprawiona i dostosowana do najnowszej wersji Pythona. Zawiera nowe zadania i łamigłówki.
Książka ta została napisana z myślą o Tobie i Twoich rodzicach. Przeznaczona jest dla dzieci od lat 10. Autor omawia podstawy tego języka na bazie jedynych w swoim rodzaju, zabawnych programów, pełnych głodnych potworów, tajnych agentów, chciwych kruków i nie tylko. Wszystkie wprowadzane pojęcia są klarownie zdefiniowane, ważne partie kodu wyróżnione kolorem i objaśnione, a nieszablonowe, wielobarwne ilustracje nadają wszystkiemu naturalnej lekkości.
W trakcie przygody z programowaniem, dowiesz się jak:
• używać podstawowych struktur danych, takich jak listy, krotki i mapy;
• organizować kod do wielokrotnego użytku za pomocą funkcji i modułów;
• używać struktur kontrolnych takich jak pętle i instrukcje warunkowe;
• rysować kształty i wzory za pomocą modułu turtle;
• tworzyć gry, animacje i inne graficzne cuda za pomocą modułu tkinter.
Celem zawartych na końcu rozdziałów zadań jest trening szarych komórek i rozwój zdolności pojmowania. Po przeczytaniu książki będziesz mieć na koncie napisane gry!
Rok wydania | 2023 |
---|---|
Liczba stron | 348 |
Kategoria | Programowanie |
Wydawca | Wydawnictwo Naukowe PWN |
Tłumaczenie | Piotr Fabijańczyk |
ISBN-13 | 978-83-01-23345-7 |
Numer wydania | 2 |
Język publikacji | polski |
Informacja o sprzedawcy | ePWN sp. z o.o. |
POLECAMY
Ciekawe propozycje
Програмування мовою Python
do koszyka
Python mniej poważnie
do koszyka
Python na poważnie
do koszyka
Python Nauka programowania dla każdego
do koszyka
Python w pigułce
do koszyka
Python w uczeniu maszynowym
do koszyka
Spis treści
PODZIĘKOWANIA XX | |
1. WSTĘP | 1 |
Dlaczego Python | 2 |
Jak uczyć się programowania | 2 |
Kto powinien przeczytać tę książkę | 3 |
Co znajduje się w tej książce | 4 |
Strona pythonforkids.com | 5 |
Dobrej zabawy! | 5 |
CZĘŚĆ I. NAUKA PROGRAMOWANIA | 7 |
1. NIE WSZYSTKIE WĘŻE PEŁZAJĄ | 9 |
Kilka słów na temat języka | 10 |
Instalowanie Pythona | 11 |
Instalowanie Pythona w systemie Windows | 11 |
Instalowanie Pythona w systemie macOS | 12 |
Instalowanie Pythona w systemie Ubuntu | 14 |
Instalowanie Pythona w systemie Raspberry Pi (Raspberry Pi OS lub Raspbian) | 15 |
Po zainstalowaniu Pythona | 16 |
Zapisywanie programów w Pythonie | 18 |
Czego się nauczyłeś | 20 |
2. OBLICZENIA I ZMIENNE | 21 |
Obliczenia w Pythonie | 21 |
Operatory w Pythonie | 23 |
Kolejność wykonywania operacji | 23 |
Zmienne są jak etykiety | 25 |
Korzystanie ze zmiennych | 26 |
Czego się nauczyliśmy | 29 |
3. CIĄGI ZNAKÓW, LISTY, KROTKI I SŁOWNIKI | 31 |
Ciągi znaków | 32 |
Tworzenie ciągów znaków | 32 |
Obsługa problemów z ciągami znaków | 33 |
Osadzanie wartości w ciągach znaków | 36 |
Mnożenie ciągów | 37 |
Listy są bardziej użyteczne niż ciągi znaków | 39 |
Dodawanie nowych elementów do listy | 41 |
Usuwanie elementów z listy | 42 |
Arytmetyka list | 42 |
Krotki | 45 |
Słowniki w Pythonie | 45 |
Czego się nauczyliśmy | 48 |
Zadania z programowania | 48 |
#1: Ulubione | 48 |
#2: Liczenie wojowników | 48 |
#3: Pozdrowienia! | 48 |
#4: List wielowierszowy | 49 |
4. RYSOWANIE Z WYKORZYSTANIEM ŻÓŁWIA | 51 |
Korzystanie z modułu żółwia Pythona | 52 |
Tworzenie płótna | 52 |
Przesuwanie żółwia | 53 |
Czego się nauczyliśmy | 59 |
Zadania z programowania | 59 |
#1: Prostokąt | 59 |
#2: Trójkąt | 60 |
#3: Czworokąt bez narożników | 60 |
#4: Przechylony czworokąt bez narożników | 60 |
5. ZADAWANIE PYTAŃ ZA POMOCĄ IF I ELSE | 63 |
Blok if | 64 |
Blok to zestaw instrukcji | 64 |
Warunki pomagają nam porównywać rzeczy | 67 |
Instrukcja if – then – else | 68 |
Instrukcja if i elif | 69 |
łączenie warunków | 71 |
Zmienne niemające wartości – None | 71 |
Różnice pomiędzy ciągami znaków i liczbami | 72 |
Czego się nauczyliśmy | 75 |
Zadania z programowania | 75 |
#1: Czy jesteś bogaty? | 75 |
#2: Ciasteczka! | 76 |
#3: Po prostu odpowiednia liczba | 76 |
#4: Mogę pokonać tych ninja | 76 |
6. ZAPĘTLAMY SIĘ | 77 |
Korzystanie z pętli | 78 |
Kiedy my rozważamy o pętlach… | 85 |
Czego się nauczyliśmy | 87 |
Zadania z programowania | 87 |
#1: Pętla Witaj | 87 |
#2: Parzyste liczby | 88 |
#3: Moje ulubione składniki | 88 |
#4: Twoja waga na Księżycu | 88 |
7. PRZETWARZANIE KODU Z UŻYCIEM FUNKCJI | 91 |
Korzystanie z funkcji | 92 |
Elementy funkcji | 93 |
Zmienne i zakres | 94 |
Korzystanie z modułów | 97 |
Funkcja input | 99 |
Czego się nauczyliśmy | 100 |
Zadania z programowania | 101 |
#1: Prosta funkcja obliczania masy na Księżycu | 101 |
#2: Waga na Księżycu uwzględniająca wiek | 101 |
#3: Program waga na Księżycu | 101 |
#4: Program waga na Marsie | 102 |
8. KORZYSTANIE Z KLAS | 103 |
Dzielenie rzeczy na klasy | 104 |
Dzieci i rodzice | 105 |
Dodawanie obiektów do klasy | 106 |
Definiowanie funkcji klas | 106 |
Dodawanie cech klas | 107 |
Do czego używać klas i obiektów | 109 |
Obiekty i klasy – przykład z grafiką | 111 |
Inne przydatne cechy obiektów i klas | 113 |
Funkcje dziedziczone | 114 |
Funkcje wywołujące inne funkcje | 115 |
Inicjowanie obiektu | 117 |
Czego się nauczyliśmy | 118 |
Zadania z programowania | 118 |
#1: Tańcząca żyrafa | 118 |
#2: Zółwie widły | 119 |
#3: Dwie małe spirale | 119 |
#4: Cztery małe spirale | 120 |
9. WIĘCEJ GRAFIKI Z UŻYCIEM ŻÓŁWIA | 121 |
Zacznijmy od prostego kwadratu | 121 |
Rysowanie gwiazd | 122 |
Rysowanie samochodu | 127 |
Kolorowanie elementów | 129 |
Funkcja rysująca wypełnione koła | 130 |
Tworzenie czystej czerni i bieli | 131 |
Funkcja rysująca kwadrat | 132 |
Rysowanie wypełnionych kwadratów | 133 |
Rysowanie wypełnionych gwiazd | 136 |
Czego się nauczyliśmy | 138 |
Zadania z programowania | 138 |
#1: Rysowanie ośmiokąta | 138 |
#2: Rysowanie wypełnionego ośmiokąta | 139 |
#3: Kolejna funkcja rysująca gwiazdy | 139 |
#4: Ponownie cztery spirale | 139 |
10. WYKORZYSTYWANIE MODUŁU TKINTER DO TWORZENIA LEPSZEJ GRAFIKI | 141 |
Tworzenie klikalnego przycisku | 143 |
Korzystanie z nazwanych parametrów | 145 |
Tworzenie płótna do rysowania | 146 |
Rysowanie linii | 147 |
Rysowanie obramowań | 148 |
Rysowanie wielu prostokątów | 151 |
Ustawianie koloru | 153 |
Rysowanie łuków | 157 |
Rysowanie wielokątów | 160 |
Wyświetlanie tekstu | 161 |
Wyświetlanie obrazów | 163 |
Tworzenie podstawowej animacji | 165 |
Co zrobić, by obiekt na coś reagował | 168 |
Więcej sposobów korzystania z identyfikatora | 171 |
Czego się nauczyliśmy | 172 |
Zadania z programowania | 172 |
#1: Wypełnij ekran trójkątami | 172 |
#2: Ruchomy trójkąt | 173 |
#3: Ruchome zdjęcie | 173 |
#4: Wypełnij ekran zdjęciami | 173 |
CZĘŚĆ II. PING PONG! | 175 |
11. TWORZYMY PIERWSZĄ GRĘ: PING PONG! | 177 |
Odbijająca się piłka | 178 |
Tworzymy płótno gry | 178 |
Tworzenie klasy dla piłki | 180 |
Dodajmy trochę działania | 182 |
Jak poruszyć piłkę | 182 |
Piłka się odbija | 185 |
Zmieniamy początkowy kierunek piłki | 186 |
Czego się nauczyłeś | 189 |
Zagadki programistyczne | 189 |
#1: Zmieniające się kolory | 189 |
#2: Błyskające kolory | 189 |
#3: Zajmij swoje pozycje! | 189 |
#4: Dodawanie paletki… | 190 |
12. KOŃCZYMY PRACE NAD NASZĄ PIERWSZĄ GRĄ: PING PONG! | 191 |
Dodajemy paletkę | 192 |
Paletka się porusza | 193 |
Kiedy piłka uderza w paletkę | 195 |
Dodajemy czynnik losowy | 198 |
Czego się nauczyliśmy | 202 |
Zadania z programowania | 203 |
#1: Opóźnianie rozpoczęcia gry | 203 |
#2: Odpowiednie „Koniec gry” | 203 |
#3: Przyspieszanie piłki | 203 |
#4: Zachowywanie wyniku gracza | 203 |
CZĘŚĆ III. MR. STICK MAN PĘDZI DO WYJŚCIA | 205 |
13. TWORZYMY GRAFIKĘ DLA GRY MR. STICK MAN | 207 |
Idea gry Mr. Stick Man | 208 |
Instalowanie programu GIMP | 208 |
Tworzenie elementów gry | 210 |
Przygotowanie przezroczystego obrazu | 211 |
Rysowanie Mr. Stick Mana | 212 |
Mr. Stick Man biegnie w prawo | 213 |
Mr. Stick Man biegnie w lewo | 213 |
Rysowanie platform | 214 |
Rysowanie drzwi | 215 |
Rysowanie tła | 216 |
Przezroczystość | 217 |
Czego się nauczyliśmy | 218 |
14. TWORZYMY GRĘ MR. STICK MAN | 219 |
Klasy gry | 220 |
Tytuł okna i płótno gry | 220 |
Wykańczanie funkcji __init__ | 221 |
Tworzenie funkcji mainloop | 222 |
Klasa Coords | 224 |
Sprawdzanie kolizji | 225 |
Kolizja duszków w poziomie | 226 |
Kolizja duszków w pionie | 228 |
Finalny kod wykrywania kolizji | 229 |
Funkcja collided_left | 229 |
Funkcja collided_right | 230 |
Funkcja collided_top | 230 |
Funkcja collided_bottom | 231 |
Tworzenie klasy Sprite | 231 |
Dodawanie platform | 233 |
Dodanie obiektu platformy | 234 |
Dodawanie wielu platform | 235 |
Czego się nauczyliśmy | 236 |
Zadania z programowania | 237 |
#1: Szachownica | 237 |
#2: Szachownica z dwóch obrazów | 237 |
#3: Półka na książki i lampa | 238 |
#4: Losowe tło | 238 |
15. TWORZENIE MR. STICK MANA | 239 |
Inicjalizacja figurki Stick | 239 |
Ładowanie obrazów Mr. Stick Mana | 240 |
Konfigurowanie zmiennych | 241 |
Powiązanie z klawiszami | 242 |
Obracanie figurki w lewo i w prawo | 243 |
Skoki figurki | 244 |
Co mamy do tej pory | 245 |
Czego się nauczyliśmy | 246 |
16. FINALIZOWANIE GRY MR. STICK MAN | 247 |
Animowanie postaci Mr. Stick Mana | 248 |
Tworzenie funkcji animate | 248 |
Wykrywanie ruchu | 248 |
Zmiana obrazu | 250 |
Odczytywanie pozycji figurki Mr. Stick Mana | 252 |
Wprawianie figurki Mr. Stick Mana w ruch | 253 |
Funkcja move | 253 |
Czy figurka uderzyła w dolną lub górną część płótna | 254 |
Czy figurka uderzyła w bok płótna | 255 |
Kolizja z innymi duszkami | 256 |
Kolizja dolnej krawędzi | 257 |
Sprawdzanie lewej i prawej strony | 258 |
Testowanie duszka figurki Mr. Stick Mana | 260 |
Wyjście! | 261 |
Tworzenie klasy DoorSprite | 261 |
Wykrywanie drzwi | 262 |
Dodawanie obiektu Drzwi | 263 |
Ostateczna gra | 264 |
Czego się nauczyliśmy | 270 |
Zadania z programowania | 270 |
#1: „Wygrałeś!” | 270 |
#2: Animowanie drzwi | 271 |
#3: Ruchome platformy | 271 |
#4: Lampa jako duszek | 271 |
POSŁOWIE: CO DALEJ | 273 |
Instalowanie Python pip w systemie Windows | 274 |
Instalowanie Python pip w systemie Ubuntu | 275 |
Instalowanie Python pip w systemie Raspberry Pi | 275 |
Instalowanie Python pip w systemie macOS | 276 |
Testowanie PyGame | 277 |
Inne gry i programowanie grafiki | 278 |
Inne języki programowania | 279 |
JavaScript | 279 |
Java | 280 |
C# | 280 |
C/C++ | 281 |
Ruby | 281 |
Go | 282 |
Rust | 282 |
Swift | 282 |
Kilka słów na koniec | 282 |
DODATEK A. PYTHON – SŁOWA KLUCZOWE | 285 |
and | 286 |
as | 286 |
assert | 287 |
async | 287 |
await | 287 |
break | 287 |
class | 288 |
continue | 289 |
def | 289 |
del | 290 |
elif | 290 |
else | 290 |
except | 291 |
finally | 291 |
for | 291 |
from | 291 |
global | 293 |
if | 293 |
import | 294 |
in | 294 |
is | 295 |
lambda | 295 |
nonlocal | 295 |
not | 295 |
or | 296 |
pass | 296 |
raise | 298 |
return | 298 |
try | 299 |
while | 299 |
with | 299 |
yield | 300 |
DODATEK B. WBUDOWANE FUNKCJE PYTHONA | 301 |
Korzystanie z wbudowanych funkcji | 302 |
Funkcja abs | 302 |
Funkcja all | 303 |
Funkcja any | 304 |
Funkcja bin | 304 |
Funkcja bool | 305 |
Funkcja callable | 307 |
Funkcja chr | 307 |
Funkcja dir | 308 |
Funkcja divmod | 310 |
Funkcja eval | 311 |
Funkcja exec | 312 |
Funkcja float | 313 |
Funkcja input | 314 |
Funkcja int | 315 |
Funkcja len | 315 |
Funkcja list | 317 |
Funkcje max i min | 317 |
Funkcja ord | 319 |
Funkcja pow | 319 |
Funkcja range | 319 |
Funkcja sum | 321 |
Otwieranie pliku w Pythonie | 321 |
Otwieranie pliku systemu Windows | 321 |
Otwieranie pliku systemu macOS | 322 |
Otwieranie pliku systemu Ubuntu lub Raspberry Pi File | 322 |
Zapisywanie do plików | 323 |
DODATEK C. ROZWIĄZYWANIE PROBLEMÓW | 325 |
Błędy „TK” podczas importowania Turtle w Ubuntu | 325 |
Błąd attribute podczas użycia Turtle | 326 |
Problemy dotyczące modułu Turtle | 326 |
Klasa nie przyjmuje argumentów | 327 |
SKOROWIDZ | 329 |