Kurs: Darmowy kurs Python dla początkujących
Lekcja 14: Prosta gra tekstowa w Python
Wprowadzenie do pętli i logiki gry
Tworzenie gier tekstowych to doskonały sposób na naukę programowania. Dzięki pętli i warunkom możemy stworzyć mechanizmy, które pozwolą graczowi na interakcję z grą. W tej części omówimy podstawowe elementy logiki gry, takie jak pętle, warunki oraz losowość.
1. Zastosowanie pętli w grach
Pętle są kluczowym elementem gier. Pozwalają one na ciągłe wykonywanie określonych akcji, takich jak czekanie na ruch gracza czy aktualizowanie stanu gry. W grach tekstowych pętla często działa, dopóki gracz nie zakończy gry lub nie spełni określonego warunku.
# Przykład pętli gry while True: komenda = input("Wpisz 'graj', aby kontynuować, lub 'wyjdź', aby zakończyć: ") if komenda == "wyjdź": print("Dziękujemy za grę!") break elif komenda == "graj": print("Rozpoczynamy rundę gry...") else: print("Nieznana komenda. Spróbuj ponownie.")
2. Logika gry – warunki
Warunki są niezbędne do podejmowania decyzji w grze. Na przykład, możemy sprawdzać, czy gracz wygrał, przegrał lub wykonał nieprawidłowy ruch.
# Prosty przykład logiki gry tajna_liczba = 7 zgadniecie = int(input("Zgadnij liczbę od 1 do 10: ")) if zgadniecie == tajna_liczba: print("Gratulacje! Trafiłeś.") elif zgadniecie < tajna_liczba: print("Za mało!") else: print("Za dużo!")
3. Losowość w grach
Losowość jest często używana w grach, aby wprowadzić element nieprzewidywalności. W Pythonie możemy korzystać z modułu random
, aby generować losowe liczby lub wybierać losowe elementy.
import random # Generowanie losowej liczby tajna_liczba = random.randint(1, 10) print(f"Losowa liczba to: {tajna_liczba}") # Losowy wybór elementu z listy kierunki = ["góra", "dół", "lewo", "prawo"] ruch = random.choice(kierunki) print(f"Postać poruszyła się w kierunku: {ruch}")
4. Łączenie pętli, warunków i losowości
Tworząc grę tekstową, możemy połączyć pętle, warunki i losowość w celu stworzenia bardziej zaawansowanej logiki gry. Na przykład:
import random tajna_liczba = random.randint(1, 10) proby = 0 print("Zgadnij liczbę od 1 do 10. Masz 3 próby.") while proby < 3: zgadniecie = int(input("Podaj swoją liczbę: ")) proby += 1 if zgadniecie == tajna_liczba: print("Gratulacje! Wygrałeś!") break elif zgadniecie < tajna_liczba: print("Za mało!") else: print("Za dużo!") if proby == 3: print(f"Przegrałeś! Tajna liczba to: {tajna_liczba}")
5. Zakończenie
W tej sekcji nauczyłeś się, jak wykorzystać pętle, warunki i losowość do stworzenia podstawowej logiki gry. Te umiejętności będą niezbędne w kolejnej części, gdzie zbudujemy interaktywną grę konsolową.
Interaktywna gra konsolowa – zgadywanie liczby
W tej części stworzymy interaktywną grę tekstową, w której użytkownik będzie zgadywał liczbę wylosowaną przez komputer. Gra wykorzysta elementy, takie jak losowość, pętle i warunki, aby zapewnić interakcję użytkownika z programem.
1. Zasady gry
Komputer losuje liczbę z określonego zakresu (np. od 1 do 100), a użytkownik ma określoną liczbę prób na jej odgadnięcie. Po każdej próbie gracz otrzymuje informację, czy jego liczba jest za mała, za duża, czy poprawna. Gra kończy się, gdy gracz zgadnie liczbę lub wykorzysta wszystkie próby.
2. Kod gry
Poniżej znajduje się pełny kod gry „Zgadywanie liczby”:
import random def zgadywanie_liczby(): print("Witaj w grze 'Zgadywanie liczby'!") print("Komputer wylosuje liczbę od 1 do 100. Twoim zadaniem jest ją odgadnąć.") print("Masz 10 prób. Powodzenia!") # Losowanie liczby tajna_liczba = random.randint(1, 100) proby = 0 maks_proby = 10 while proby < maks_proby: try: # Pobieranie liczby od użytkownika zgadniecie = int(input(f"\nPróba {proby + 1}/{maks_proby}. Podaj swoją liczbę: ")) proby += 1 # Sprawdzenie wyniku if zgadniecie == tajna_liczba: print(f"Gratulacje! Odgadłeś liczbę {tajna_liczba} w {proby} próbach!") break elif zgadniecie < tajna_liczba: print("Za mało! Spróbuj większej liczby.") else: print("Za dużo! Spróbuj mniejszej liczby.") except ValueError: print("Błąd: Proszę podać poprawną liczbę całkowitą.") # Sprawdzenie, czy gracz wykorzystał wszystkie próby if proby == maks_proby: print(f"Przegrałeś! Tajna liczba to: {tajna_liczba}") # Wywołanie gry zgadywanie_liczby()
3. Wyjaśnienie kodu
Kod składa się z kilku kluczowych elementów:
- Losowanie liczby: Używamy funkcji
random.randint()
do wylosowania liczby z zakresu od 1 do 100. - Pętla: Pętla
while
pozwala użytkownikowi na wykonanie maksymalnie 10 prób. - Warunki: Instrukcje
if
sprawdzają, czy zgadywana liczba jest poprawna, za mała, czy za duża. - Obsługa błędów: Blok
try-except
zapobiega awariom programu w przypadku wprowadzenia niepoprawnych danych przez użytkownika (np. tekstu zamiast liczby).
4. Przykład działania gry
Przykład interakcji użytkownika z programem:
Witaj w grze 'Zgadywanie liczby'! Komputer wylosuje liczbę od 1 do 100. Twoim zadaniem jest ją odgadnąć. Masz 10 prób. Powodzenia! Próba 1/10. Podaj swoją liczbę: 50 Za mało! Spróbuj większej liczby. Próba 2/10. Podaj swoją liczbę: 75 Za dużo! Spróbuj mniejszej liczby. Próba 3/10. Podaj swoją liczbę: 63 Za mało! Spróbuj większej liczby. Próba 4/10. Podaj swoją liczbę: 68 Gratulacje! Odgadłeś liczbę 68 w 4 próbach!
5. Możliwe rozszerzenia gry
Oto kilka pomysłów na rozbudowę gry:
- Dodanie opcji zmiany zakresu losowanych liczb (np. od 1 do 1000).
- Dodanie poziomów trudności, które ograniczają liczbę prób (np. łatwy: 15 prób, trudny: 5 prób).
- Zliczanie punktów gracza w zależności od liczby prób.
- Zapisanie wyników do pliku, aby stworzyć tabelę najlepszych wyników.
Gra w „Zgadywanie liczby” to świetny sposób na praktyczne zastosowanie podstaw programowania w Pythonie. Możesz ją dowolnie modyfikować, aby dostosować do własnych potrzeb i pomysłów!
Gratulacje za ukończenie kursu Python dla początkujących!
Serdecznie gratulujemy ukończenia kursu i zdobycia solidnych podstaw programowania w Pythonie! Mamy nadzieję, że materiał był dla Ciebie wartościowy i inspirujący. Jeśli masz pomysły na kolejne kursy lub chciałbyś podzielić się swoją opinią, skontaktuj się z nami – Twoje zdanie jest dla nas bardzo ważne.
Możesz to zrobić poprzez formularz kontaktowy lub w tym wpisie.
Nie przegap nowości! Zapisz się do naszego newslettera, aby otrzymywać informacje o nowych kursach i materiałach edukacyjnych. Czekamy na Twoje sugestie i z przyjemnością pomożemy Ci rozwijać się w świecie programowania!
Spis Treści - darmowy kurs Python dla początkujących
Lekcja 1: Wprowadzenie do programowania
- Co to jest programowanie?
- Dlaczego warto uczyć się Pythona?
- Instalacja Python i wprowadzenie do edytorów (IDLE, VS Code).
Lekcja 2: Pierwszy program w Pythonie
- Składnia Pythona.
- Wyświetlanie tekstu (funkcja print).
- Komentarze i ich znaczenie.
Lekcja 3: Podstawowe typy danych
- Liczby: int, float.
- Ciągi znaków (stringi).
- Typ logiczny (boolean).
- Funkcja type.
Lekcja 4: Zmienne i operatory
- Deklaracja i przypisywanie zmiennych.
- Operatory arytmetyczne, porównania, logiczne.
Lekcja 5: Listy i krotki
- Tworzenie list i krotek.
- Indeksowanie, dodawanie, usuwanie elementów.
- Operacje na listach.
Lekcja 6: Słowniki i zbiory
- Tworzenie i operacje na słownikach.
- Iteracja po słownikach.
- Zbiory i ich zastosowania.
Lekcja 7: Instrukcje warunkowe
- Instrukcje if, elif, else.
- Operatory logiczne w praktyce.
Lekcja 8: Pętle
- Pętla for i while.
- Instrukcje break, continue, else w pętlach.
Lekcja 9: Funkcje
- Tworzenie i wywoływanie funkcji.
- Argumenty i wartości domyślne.
- Funkcje anonimowe (lambda).
Lekcja 10: Praca z plikami
- Otwieranie, czytanie i zapisywanie plików.
- Obsługa błędów przy pracy z plikami.
Lekcja 11: Podstawy programowania obiektowego
- Klasy i obiekty.
- Atrybuty i metody.
- Prosty projekt: Zarządzanie listą zadań.
Lekcja 12: Tworzenie prostego kalkulatora
- Łączenie funkcji i warunków.
- Obsługa błędów (try-except).
Lekcja 13: Zarządzanie plikami tekstowymi
- Program do przechowywania i wyszukiwania notatek w plikach.
Lekcja 14: Prosta gra tekstowa w Python
- Wprowadzenie do pętli i logiki gry.
- Interaktywna gra konsolowa, np. zgadywanie liczby.
Jeśli chciałbyś być poinformowany o następnych kursach to zapisz się do naszego newslettera: