reklama - zainteresowany?

Python. 14 twórczych projektów dla dociekliwych programistów - Helion

Python. 14 twórczych projektów dla dociekliwych programistów
Autor: Mahesh Venkitachalam
Tytuł oryginału: Python Playground: Geeky Projects for the Curious Programmer
TÅ‚umaczenie: Lech Lachowski
ISBN: 978-83-283-2597-5
stron: 368, Format: 170x230, okładka: miękka
Data wydania: 2016-10-10
Księgarnia: Helion

Cena książki: 79,00 zł

Dodaj do koszyka Python. 14 twórczych projektów dla dociekliwych programistów

Tagi: Arduino | Python - Programowanie | Raspberry Pi

Python jest ciekawym językiem programowania o dużych możliwościach. Dzięki niemu w prosty sposób można rozwiązać złożone problemy tego świata. Umożliwia przy tym pisanie czytelnego i łatwego w konserwacji kodu. Opanowanie składni i podstawowych koncepcji programistycznych w Pythonie nie jest trudne, jednak potem przychodzi moment, aby wypróbować go w prawdziwym programowaniu.

Niniejsza książka nauczy CiÄ™ wykorzystywać ten jÄ™zyk do rozwiÄ…zywania nietrywialnych problemów, z którymi muszÄ… siÄ™ mierzyć programiÅ›ci. Książka skÅ‚ada siÄ™ z czternastu zabawnych i inspirujÄ…cych projektów, dziÄ™ki którym odkryjesz niuanse programowania i nauczysz siÄ™ pracy z kilkoma bibliotekami Pythona. Co ważniejsze, nauczysz siÄ™ analizy problemu, dowiesz siÄ™, jak opracować algorytm do jego rozwiÄ…zania, a nastÄ™pnie jak zaimplementować rozwiÄ…zanie. Wykorzystasz Pythona do tworzenia muzyki, symulacji rzeczywistych zjawisk, a także zmusisz do współpracy z pÅ‚ytkami Arduino i Raspberry Pi — a wszystko w ramach Å›wietnej, wciÄ…gajÄ…cej zabawy!

Sprawdź, jak wykorzystać Pythona do:

  • generowania spirografowych wzorów,
  • tworzenia muzyki na komputerze,
  • przekÅ‚adania obrazów na sztukÄ™ ASCII,
  • tworzenia realistycznych animacji za pomocÄ… biblioteki OpenGL,
  • wizualizacji 3D danych z obrazowania medycznego CT i MRI,
  • zbudowania internetowego systemu monitorowania pogody z wykorzystaniem Raspberry Pi.

Python? Spróbuj się z nim pobawić!


Mahesh Venkitachalam jest inżynierem oprogramowania z dwudziestoletnim doÅ›wiadczeniem w programowaniu. Od lat rozwija aplikacje sÅ‚użące naukowcom do wizualizacji 3D. Pracuje również nad podzespoÅ‚ami elektronicznymi, które udostÄ™pnia amatorom elektroniki na zasadach open source. Jest pasjonatem technologii, prowadzi popularny blog o elektronice i programowaniu — electronut.in. Mieszka w Indiach, w Bangalore.

Dodaj do koszyka Python. 14 twórczych projektów dla dociekliwych programistów

Spis treści

Python. 14 twórczych projektów dla dociekliwych programistów -- spis treści

  • PodziÄ™kowania
  • Wprowadzenie
    • Dla kogo jest ta książka?
    • Jaka jest zawartość książki?
      • Część I. Rozgrzewka
      • Część II. Symulacja życia
      • Część III. Zabawy z obrazami
      • Część IV. Grafika 3D
      • Część V. Projekty z wykorzystaniem sprzÄ™tu
    • Dlaczego Python?
      • Wersje Pythona
      • Kod zamieszczony w książce
  • CZĘŚĆ I Rozgrzewka
  • 1. Parsowanie list odtwarzania programu iTunes
    • Anatomia pliku listy odtwarzania iTunes
    • Wymagania
    • Kod
      • Znajdowanie duplikatów
      • WyodrÄ™bnianie duplikatów
      • Wyszukiwanie utworów wspólnych dla wielu list odtwarzania
      • Gromadzenie danych statystycznych
      • Prezentowanie danych
      • Opcje wiersza poleceÅ„
    • Kompletny kod
    • Uruchamianie programu
    • Podsumowanie
    • Eksperymenty!
  • 2. Spirografy
    • Równania parametryczne
      • Równania spirografu
      • Å»óÅ‚wia grafika
    • Wymagania
    • Kod
      • Konstruktor Spiro
      • Funkcje konfiguracyjne
      • Metoda restart()
      • Metoda draw()
      • Tworzenie animacji
      • Klasa SpiroAnimator
      • Metoda genRandomParams()
      • Ponowne uruchamianie programu
      • Metoda update()
      • WyÅ›wietlanie lub ukrywanie kursora
      • Zapisywanie krzywych
      • Parsowanie argumentów wiersza poleceÅ„ i inicjowanie
    • Kompletny kod
    • Uruchomienie animacji spirografu
    • Podsumowanie
    • Eksperymenty!
  • CZĘŚĆ II Symulacja życia
  • 3. Gra w życie
    • Jak to dziaÅ‚a?
    • Wymagania
    • Kod
      • Reprezentacja planszy
      • Warunki poczÄ…tkowe
      • Warunki brzegowe
      • Implementacja reguÅ‚
      • WysyÅ‚anie do programu argumentów wiersza poleceÅ„
      • Inicjowanie symulacji
    • Kompletny kod
    • Uruchamianie symulacji Gry w życie
    • Podsumowanie
    • Eksperymenty!
  • 4. Generowanie tonów harmonicznych za pomocÄ… algorytmu Karplusa-Stronga
    • Jak to dziaÅ‚a?
      • Symulacja
      • Tworzenie plików WAV
      • Pentatonika molowa
    • Wymagania
    • Kod
      • Implementacja bufora pierÅ›cieniowego za pomocÄ… klasy deque
      • Implementacja algorytmu Karplusa-Stronga
      • Zapisywanie pliku WAV
      • Odtwarzanie plików WAV za pomocÄ… moduÅ‚u pygame
      • Metoda main()
    • Kompletny kod
    • Uruchamianie symulacji szarpanej struny
    • Podsumowanie
    • Eksperymenty!
  • 5. Boidy: symulacja stada
    • Jak to dziaÅ‚a?
    • Wymagania
    • Kod
      • Obliczanie pozycji i prÄ™dkoÅ›ci boidów
      • Ustawianie warunków brzegowych
      • Rysowanie boida
        • Rysowanie ciaÅ‚a i gÅ‚owy boida
        • Aktualizowanie pozycji boida
      • Zastosowanie reguÅ‚ algorytmu stada
      • Dodawanie boida
      • Rozpraszanie boidów
      • Argumenty wiersza poleceÅ„
      • Klasa Boids
    • Kompletny kod
    • Uruchamianie symulacji algorytmu stada
    • Podsumowanie
    • Eksperymenty!
  • CZĘŚĆ III Zabawy z obrazami
  • 6. Sztuka ASCII
    • Jak to dziaÅ‚a?
    • Wymagania
    • Kod
      • Definiowanie poziomów skali szaroÅ›ci oraz siatki
      • Obliczanie Å›redniej jasnoÅ›ci
      • Generowanie zawartoÅ›ci ASCII na podstawie obrazu
      • Opcje wiersza poleceÅ„
      • Zapisywanie Å‚aÅ„cuchów znaków obrazu ASCII w pliku tekstowym
    • Kompletny kod
    • Uruchamianie generatora sztuki ASCII
    • Podsumowanie
    • Eksperymenty!
  • 7. Fotomozaiki
    • Jak to dziaÅ‚a?
      • Dzielenie obrazu docelowego
      • UÅ›rednianie wartoÅ›ci kolorów
      • Dopasowywanie obrazów
    • Wymagania
    • Kod
      • Wczytywanie obrazów kafelków
      • Obliczanie Å›redniej wartoÅ›ci koloru obrazów wejÅ›ciowych
      • Dzielenie obrazu docelowego na siatkÄ™
      • Wyszukiwanie najlepszego dopasowania dla kafelka
      • Tworzenie siatki obrazu
      • Tworzenie fotomozaiki
      • Dodawanie opcji wiersza poleceÅ„
      • Kontrolowanie rozmiaru fotomozaiki
    • Kompletny kod
    • Uruchamianie generatora fotomozaiki
    • Podsumowanie
    • Eksperymenty!
  • 8. Autostereogramy
    • Jak to dziaÅ‚a?
      • Postrzeganie gÅ‚Ä™bi w autostereogramie
      • Mapy gÅ‚Ä™bi
    • Wymagania
    • Kod
      • Powtarzanie danego kafelka
      • Tworzenie kafelka z losowych kóÅ‚eczek
      • Tworzenie autostereogramu
      • Opcje wiersza poleceÅ„
    • Kompletny kod
    • Uruchamianie generatora autostereogramu
    • Podsumowanie
    • Eksperymenty!
  • CZĘŚĆ IV Grafika 3D
  • 9. Zrozumieć OpenGL
    • Tradycyjny OpenGL
    • Nowoczesny OpenGL: potok grafiki 3D
      • Prymitywy geometryczne
      • Transformacje 3D
      • Shadery
        • Cieniowanie wierzchoÅ‚kowe
        • Cieniowanie pikseli
      • Bufory wierzchoÅ‚ków
      • Mapowanie tekstury
      • WyÅ›wietlanie OpenGL
    • Wymagania
    • Kod
      • Tworzenie okna OpenGL
      • Ustawianie wywoÅ‚aÅ„ zwrotnych
        • WywoÅ‚anie zwrotne klawiatury
        • Zdarzenie zmiany rozmiaru okna
        • PÄ™tla gÅ‚ówna
      • Klasa Scene
        • Definiowanie geometrii 3D
        • Definiowanie shaderów GLSL
    • Kompletny kod
    • Uruchamianie aplikacji OpenGL
    • Podsumowanie
    • Eksperymenty!
  • 10. Systemy czÄ…steczek
    • Jak to dziaÅ‚a?
      • Modelowanie ruchu czÄ…steczki
      • Ustawianie maksymalnej rozpiÄ™toÅ›ci
      • Renderowanie czÄ…stek
      • Użycie blendowania OpenGL do tworzenia bardziej realistycznych iskier
      • Korzystanie z billboardingu
      • Animowanie iskier
    • Wymagania
    • Kod dla systemu czÄ…steczek
      • Definiowanie geometrii czÄ…steczek
      • Definiowanie tablicy opóźnieÅ„ czasowych dla czÄ…steczek
      • Ustawianie poczÄ…tkowych prÄ™dkoÅ›ci czÄ…steczek
      • Tworzenie cieniowania wierzchoÅ‚kowego
      • Tworzenie cieniowania pikseli
      • Renderowanie
        • Obliczanie macierzy obrotu dla billboardingu
        • GÅ‚ówny kod renderowania
      • Klasa Camera
    • Kompletny kod systemu czÄ…steczek
    • Kod pudeÅ‚ka
    • Kod dla programu gÅ‚ównego
      • Aktualizacja czÄ…steczek w każdym kroku czasowym
      • Procedura obsÅ‚ugi klawiatury
      • ZarzÄ…dzanie gÅ‚ównÄ… pÄ™tlÄ… programu
    • Kompletny gÅ‚ówny kod programu
    • Uruchamianie programu
    • Podsumowanie
    • Eksperymenty!
  • 11. Rendering objÄ™toÅ›ciowy
    • Jak to dziaÅ‚a?
      • Format danych
      • Generowanie promieni
        • Ray casting w GPU
        • Pokazywanie wycinków 2D
      • WyÅ›wietlanie okna OpenGL
    • Wymagania
    • PrzeglÄ…d kodu projektu
    • Generowanie tekstury 3D
    • Kompletny kod tekstury 3D
    • Generowanie promieni
      • Definiowanie geometrii szeÅ›cianu kolorów
      • Tworzenie obiektu bufora ramek
      • Renderowanie tylnych Å›cian szeÅ›cianu
      • Renderowanie przednich Å›cian szeÅ›cianu
      • Renderowanie caÅ‚ego szeÅ›cianu
      • Procedura obsÅ‚ugi zmiany rozmiaru okna
    • Kompletny kod generowania promieni
    • Volume ray casting
      • Cieniowanie wierzchoÅ‚kowe
      • Cieniowanie pikseli
    • Kompletny kod volume ray casting
    • Tworzenie wycinków 2D
      • Cieniowanie wierzchoÅ‚kowe
      • Cieniowanie pikseli
      • Interfejs użytkownika dla tworzenia wycinków 2D
    • Kompletny kod tworzenia wycinków 2D
    • Zebranie kodu w caÅ‚ość
    • Kompletny kod pliku gÅ‚ównego
    • Uruchamianie programu
    • Podsumowanie
    • Eksperymenty!
  • CZĘŚĆ V Projekty z wykorzystaniem sprzÄ™tu
  • 12. Wprowadzenie do Arduino
    • Arduino
    • Ekosystem Arduino
      • JÄ™zyk
      • IDE
      • SpoÅ‚eczność
      • Peryferia
    • Wymagania
    • Budowa obwodu czujnika natężenia Å›wiatÅ‚a
      • Jak dziaÅ‚a obwód
      • Szkic Arduino
      • Tworzenie wykresu w czasie rzeczywistym
    • Kod Pythona
    • Kompletny kod Pythona
    • Uruchamianie programu
    • Podsumowanie
    • Eksperymenty!
  • 13. Laserowy wyÅ›wietlacz audio
    • Generowanie wzorów za pomocÄ… lasera
      • Sterowanie silniczkiem
      • Szybka transformata Fouriera
    • Wymagania
      • Konstruowanie wyÅ›wietlacza laserowego
        • Wyrównywanie luster
        • Zasilanie silniczków
      • PodÅ‚Ä…czanie sterownika silniczków
    • Szkic Arduino
      • Konfigurowanie cyfrowych pinów wyjÅ›cia Arduino
      • PÄ™tla gÅ‚ówna
      • Zatrzymywanie silniczków
    • Kod Pythona
      • Wybór urzÄ…dzenia audio
      • Odczyt danych z urzÄ…dzenia wejÅ›ciowego
      • Obliczanie FFT strumienia danych
      • Uzyskiwanie informacji o czÄ™stotliwoÅ›ci z wartoÅ›ci FFT
      • Konwersja czÄ™stotliwoÅ›ci na prÄ™dkoÅ›ci i kierunki obracania siÄ™ silniczków
      • Testowanie ustawieÅ„ silniczków
      • Opcje wiersza poleceÅ„
      • RÄ™czne testowanie
    • Kompletny kod Pythona
    • Uruchamianie programu
    • Podsumowanie
    • Eksperymenty!
  • 14. Monitor pogody oparty na Raspberry Pi
    • SprzÄ™t
      • Czujnik temperatury i wilgotnoÅ›ci DHT11
      • Raspberry Pi
      • Konfigurowanie Raspberry Pi
    • Instalacja i konfiguracja oprogramowania
      • System operacyjny
      • WstÄ™pna konfiguracja
      • Konfiguracja Wi-Fi
      • Konfigurowanie Å›rodowiska programistycznego
      • PodÅ‚Ä…czenie poprzez SSH
      • Framework WWW Bottle
      • Tworzenie wykresów za pomocÄ… biblioteki flot
      • WyÅ‚Ä…czanie Raspberry Pi
    • Budowanie sprzÄ™tu
    • Kod
      • ObsÅ‚uga żądaÅ„ danych z czujnika
      • Tworzenie wykresu danych
      • Metoda update()
      • Procedura obsÅ‚ugi JavaScript dla diody LED
      • Dodawanie interaktywnoÅ›ci
    • Kompletny kod
    • Uruchamianie programu
    • Podsumowanie
    • Eksperymenty!
  • DODATKI
  • A. Instalacja oprogramowania
    • Instalacja kodu źródÅ‚owego dla projektów z książki
    • Instalacja w systemie Windows
      • Instalacja biblioteki GLFW
      • Instalacja prekompilowanych plików binarnych dla każdego moduÅ‚u
      • Inne opcje
    • Instalacja w systemie OS X
      • Instalacja Xcode i MacPorts
      • Instalacja moduÅ‚ów
    • Instalacja w systemie Linux
  • B. Praktyczne podstawy elektroniki
    • Typowe komponenty
    • Podstawowe narzÄ™dzia
    • Budowanie obwodów
    • IdÄ…c dalej
  • C. Raspberry Pi: porady i wskazówki
    • Konfigurowanie Wi-Fi
    • Sprawdzanie poÅ‚Ä…czenia Raspberry Pi z sieciÄ… lokalnÄ…
    • Zapobieganie wprowadzaniu adaptera Wi-Fi w tryb uÅ›pienia
    • Tworzenie kopii zapasowej kodu i danych z Raspberry Pi
    • Tworzenie kopii zapasowej caÅ‚ego systemu operacyjnego Raspberry Pi
    • Logowanie do Raspberry Pi poprzez SSH
    • Korzystanie z kamery Raspberry Pi
    • WÅ‚Ä…czanie obsÅ‚ugi dźwiÄ™ku na Raspberry Pi
    • Zmuszenie Raspberry Pi do mówienia
    • WÅ‚Ä…czanie obsÅ‚ugi HDMI
    • Mobilny Raspberry Pi
    • Sprawdzanie wersji sprzÄ™towej Raspberry Pi

Dodaj do koszyka Python. 14 twórczych projektów dla dociekliwych programistów

Code, Publish & WebDesing by CATALIST.com.pl



(c) 2005-2024 CATALIST agencja interaktywna, znaki firmowe należą do wydawnictwa Helion S.A.