Python – nauka programowania
Jak nauczyć się Pythona od zera – darmowe kursy, ćwiczenia, projekty?
Projekt-Plan
{{whyLabel}}: Python to silnik, który wykonuje Twój kod; wersja 3.13 oferuje lepsze komunikaty o błędach i wydajność.
{{howLabel}}:
- Pobierz instalator z oficjalnej strony python.org.
- Podczas instalacji zaznacz opcję „Add Python to PATH” (kluczowe dla Windows).
- Otwórz terminal i wpisz
python --version, aby sprawdzić poprawność.
{{doneWhenLabel}}: Terminal poprawnie wyświetla wersję Python 3.13 lub nowszą.
{{whyLabel}}: Profesjonalny edytor ułatwia pisanie kodu dzięki podpowiadaniu składni i debugowaniu.
{{howLabel}}:
- Pobierz i zainstaluj Visual Studio Code (wersja Open Source).
- Wewnątrz VS Code wejdź w zakładkę Extensions (Ctrl+Shift+X) i zainstaluj rozszerzenie „Python” od Microsoft.
- Stwórz pierwszy plik
test.pyi sprawdź, czy edytor rozpoznaje składnię.
{{doneWhenLabel}}: VS Code poprawnie podświetla składnię Python i pozwala na uruchomienie pliku.
{{whyLabel}}: Kurs Harvardu „CS50's Introduction to Programming with Python” to złoty standard nauki logicznego myślenia.
{{howLabel}}:
- Wejdź na platformę edX lub stronę kursu CS50P.
- Wybierz opcję „Audit this course”, aby mieć darmowy dostęp do wszystkich materiałów.
- Zapoznaj się z harmonogramem i przygotuj notatnik.
{{doneWhenLabel}}: Masz dostęp do panelu kursu i pierwszej lekcji.
{{whyLabel}}: Zmienne to kontenery na informacje, bez których nie przechowasz żadnych danych.
{{howLabel}}:
- Przećwicz tworzenie zmiennych typu:
int(liczby całkowite),float(ułamki),str(tekst) orazbool(prawda/fałsz). - Użyj funkcji
type(), aby sprawdzać typy zmiennych w locie. - Wykonaj proste konwersje (rzutowanie), np.
int("10").
{{doneWhenLabel}}: Potrafisz samodzielnie zdefiniować i wypisać w konsoli 4 różne typy danych.
{{whyLabel}}: Programowanie to w dużej mierze manipulacja danymi za pomocą matematyki i logiki.
{{howLabel}}:
- Przetestuj operatory:
+,-,*,/,//(dzielenie całkowite),%(modulo) oraz**(potęgowanie). - Poznaj operatory porównania:
==,!=,<,>. - Zrozum logikę
and,or,not.
{{doneWhenLabel}}: Napisałeś skrypt obliczający pole koła i sprawdzający, czy wynik jest większy od 100.
{{whyLabel}}: Instrukcje warunkowe pozwalają programowi podejmować decyzje na podstawie danych.
{{howLabel}}:
- Naucz się struktury
if,eliforazelse. - Zwróć szczególną uwagę na wcięcia (indentację) – w Pythonie są one częścią składni.
- Stwórz program sprawdzający, czy użytkownik jest pełnoletni.
{{doneWhenLabel}}: Skrypt poprawnie reaguje na różne wartości wejściowe, wypisując odpowiednie komunikaty.
{{whyLabel}}: Listy to najczęściej używana struktura do przechowywania wielu elementów w określonej kolejności.
{{howLabel}}:
- Naucz się dodawać (
append), usuwać (remove) i sortować elementy. - Poznaj indeksowanie (pamiętaj: liczymy od 0!) oraz wycinanie (slicing), np.
lista[1:3]. - Przetestuj funkcję
len().
{{doneWhenLabel}}: Potrafisz stworzyć listę zakupów i zmodyfikować ją za pomocą kodu.
{{whyLabel}}: Pętle pozwalają uniknąć kopiowania kodu, wykonując operacje na tysiącach elementów w ułamku sekundy.
{{howLabel}}:
- Użyj
for element in lista:do iteracji po zbiorach. - Poznaj funkcję
range()do generowania sekwencji liczb. - Zrozum pętlę
whilei ryzyko „pętli nieskończonej” (używajbreak).
{{doneWhenLabel}}: Napisałeś program, który wypisuje tabliczkę mnożenia dla liczby 7.
{{whyLabel}}: Słowniki pozwalają przechowywać dane w formacie klucz-wartość, co jest kluczowe w pracy z bazami danych i API.
{{howLabel}}:
- Stwórz słownik reprezentujący osobę:
{'imie': 'Jan', 'wiek': 25}. - Naucz się pobierać wartości za pomocą kluczy oraz metody
.get(). - Przećwicz iterowanie po kluczach i wartościach słownika.
{{doneWhenLabel}}: Stworzyłeś prostą bazę danych kontaktów opartą na słowniku.
{{whyLabel}}: Funkcje pozwalają na modularność kodu – piszesz raz, używasz wielokrotnie.
{{howLabel}}:
- Naucz się słowa kluczowego
def, przyjmowania argumentów i zwracania wyników przezreturn. - Zrozum różnicę między zmiennymi lokalnymi a globalnymi (scope).
- Stwórz funkcję przeliczającą waluty.
{{doneWhenLabel}}: Masz zestaw 3 funkcji, które wykonują konkretne obliczenia i zwracają wyniki.
{{whyLabel}}: Python ma „baterie w zestawie” – tysiące gotowych narzędzi czekających na użycie.
{{howLabel}}:
- Użyj
import mathdo zaawansowanych obliczeń. - Wykorzystaj
import randomdo generowania losowych liczb. - Sprawdź
import datetimedo pracy z czasem.
{{doneWhenLabel}}: Napisałeś skrypt, który losuje liczbę i oblicza jej pierwiastek kwadratowy.
{{whyLabel}}: Profesjonalny program nie „wywala się” przy błędzie, lecz informuje użytkownika, co poszło nie tak.
{{howLabel}}:
- Otocz ryzykowny kod blokiem
try:. - Zdefiniuj obsługę konkretnych błędów w
except ValueError:lubexcept ZeroDivisionError:. - Przetestuj działanie programu przy błędnych danych wejściowych.
{{doneWhenLabel}}: Twój kalkulator nie wyłącza się po próbie dzielenia przez zero.
{{whyLabel}}: To klasyczny projekt łączący pętle, warunki i moduł random.
{{howLabel}}:
- Komputer losuje liczbę 1-100.
- Użytkownik podaje typy w pętli
while. - Program podpowiada „za dużo” lub „za mało”.
- Na koniec wyświetla liczbę prób.
{{doneWhenLabel}}: Gra jest grywalna i poprawnie zlicza próby.
{{whyLabel}}: Automatyczne pobieranie danych ze stron internetowych to jedna z najsilniejszych stron Pythona.
{{howLabel}}:
- Zainstaluj bibliotekę
requestsibeautifulsoup4przez terminal (pip install). - Napisz skrypt pobierający nagłówki wiadomości z wybranego portalu informacyjnego.
- Zapisz wyniki do pliku tekstowego.
{{doneWhenLabel}}: Masz plik .txt z aktualnymi nagłówkami pobranymi z sieci.
{{whyLabel}}: Zarządzanie zadaniami uczy pracy z plikami (zapis/odczyt) i trwałością danych.
{{howLabel}}:
- Stwórz menu: 1. Dodaj, 2. Pokaż, 3. Usuń, 4. Wyjdź.
- Użyj operacji na plikach
open('tasks.txt', 'a'), aby zadania nie znikały po wyłączeniu programu. - Zaimplementuj funkcję usuwania konkretnego zadania z listy.
{{doneWhenLabel}}: Program zapisuje zadania do pliku i odczytuje je przy ponownym uruchomieniu.
{{whyLabel}}: System kontroli wersji jest niezbędny w pracy zespołowej i chroni Twój kod przed utratą.
{{howLabel}}:
- Zainstaluj Git i załóż konto na GitHub.
- Poznaj komendy:
git init,git add .,git commit -m "opis",git push. - Wrzuć swój projekt To-Do na publiczne repozytorium.
{{doneWhenLabel}}: Twój kod jest dostępny online na Twoim profilu GitHub.
{{whyLabel}}: Regularna praktyka na realnych problemach to najszybsza droga do biegłości.
{{howLabel}}:
- Zarejestruj się na darmowej platformie Exercism.
- Wybierz ścieżkę „Python Track”.
- Rozwiąż co najmniej 10 zadań typu „Easy”, korzystając z automatycznych testów.
{{doneWhenLabel}}: Ukończyłeś 10 zadań i zrozumiałeś feedback od mentorów lub testów.