Skip to main content

Python to jeden z najpopularniejszych języków programowania na świecie – i to nie bez powodu. Prosta składnia, ogromna społeczność i tysiące gotowych bibliotek sprawiają, że świetnie nadaje się zarówno dla osób stawiających pierwsze kroki w programowaniu, jak i dla doświadczonych inżynierów. W tym artykule poznasz podstawy Pythona od zera – od zmiennych i typów danych, przez pętle i funkcje, aż po obsługę plików i moduły.

Czym jest Python i dlaczego warto go poznać?

Python to interpretowany język programowania o dynamicznym typowaniu i czytelnej składni. Stworzony przez Guido van Rossuma w 1991 roku, szybko zyskał popularność dzięki filozofii „czytalności kodu”. W Pythonie nie znajdziesz średników, nawiasów klamrowych ani skomplikowanych deklaracji – wciskasz Tab, piszesz co chcesz zrobić, i działa.

Python używany jest m.in. w: automatyce przemysłowej, analizie danych, uczeniu maszynowym (AI/ML), tworzeniu stron internetowych (Django, Flask), skryptach systemowych i DevOps, a nawet w grach. Wg indeksu TIOBE to konsekwentnie jeden z 3 najpopularniejszych języków programowania.

Instalacja – VSCode i rozszerzenie Python

Do pracy z Pythonem potrzebujesz dwóch rzeczy: edytora kodu i interpretera Pythona. Najwygodniejszym sposobem jest instalacja Visual Studio Code (VSCode) – darmowego edytora od Microsoftu – a następnie dodanie rozszerzenia Python, które automatycznie zainstaluje wszystko czego potrzebujesz.

Krok po kroku: 1) Pobierz i zainstaluj VSCode ze strony code.visualstudio.com. 2) Otwórz VSCode i przejdź do zakładki rozszerzeń (ikona klocków po lewej lub skrót Ctrl+Shift+X). 3) Wyszukaj „Python” i zainstaluj rozszerzenie od Microsoftu. 4) Przy pierwszym uruchomieniu pliku .py VSCode zapyta o interpreter – kliknij „Install” i gotowe.

Terminal VSCode (Ctrl+`)
# Sprawdź wersję Pythona w terminalu VSCode
python --version
Python 3.12.2

# Jeśli nie działa, użyj:
python3 --version

Jeśli widzisz numer wersji – środowisko jest gotowe do pracy. VSCode automatycznie rozpoznaje pliki .py, podświetla składnię, podpowiada funkcje i pozwala uruchamiać kod jednym kliknięciem (zielony trójkąt ▶ w prawym górnym rogu). To właśnie w VSCode będziemy pracować w naszym kursie Python od podstaw – cała praktyka odbywa się w tym edytorze.

Pierwszy program – Hello World

Tradycją w nauce każdego języka programowania jest napisanie programu „Hello World”. W Pythonie to dokładnie jedna linia kodu:

hello.py
print("Witaj w świecie Pythona!")

Zapisz ten kod w pliku hello.py i uruchom poleceniem python hello.py w terminalu. Na ekranie pojawi się tekst „Witaj w świecie Pythona!”. Gratulacje – właśnie napisałeś swój pierwszy program!

Zmienne i typy danych

Zmienne w Pythonie to pojemniki na dane. Nie musisz deklarować typu – Python rozpoznaje go automatycznie. Wystarczy przypisać wartość za pomocą znaku =.

zmienne.py
# Liczby całkowite (int)
wiek = 25
ilosc_czujnikow = 12

# Liczby zmiennoprzecinkowe (float)
temperatura = 23.5
napięcie = 3.14

# Tekst (string)
imie = "Jan"
komunikat = 'Czujnik aktywny'

# Wartość logiczna (bool)
czy_polaczony = True
alarm = False

# Sprawdzenie typu zmiennej
print(type(temperatura))  # <class 'float'>

Najważniejsze typy danych w Pythonie to:

TypOpisPrzykład
intLiczba całkowita42, -7, 0
floatLiczba zmiennoprzecinkowa3.14, -0.5, 100.0
strTekst (ciąg znaków)„hello”, 'Python’
boolWartość logicznaTrue, False
listLista (kolekcja elementów)[1, 2, 3]
dictSłownik (klucz-wartość){„klucz”: „wartość”}

Operatory w Pythonie

Operatory pozwalają wykonywać operacje na danych – od prostej arytmetyki po porównania logiczne.

operatory.py
# Arytmetyczne
print(10 + 3)   # 13  – dodawanie
print(10 - 3)   # 7   – odejmowanie
print(10 * 3)   # 30  – mnożenie
print(10 / 3)   # 3.33 – dzielenie
print(10 // 3)  # 3   – dzielenie całkowite
print(10 % 3)   # 1   – reszta z dzielenia
print(2 ** 10)  # 1024 – potęgowanie

# Porównania (zwracają True/False)
print(5 == 5)   # True  – równe
print(5 != 3)   # True  – różne
print(5 > 3)    # True  – większe
print(5 <= 3)   # False – mniejsze lub równe

Instrukcje warunkowe – if, elif, else

Instrukcje warunkowe pozwalają programowi podejmować decyzje. W zależności od spełnienia warunku, wykonywany jest inny blok kodu. W Pythonie używamy słów kluczowych if, elif (else if) i else.

warunki.py
temperatura = 85

if temperatura > 100:
    print("ALARM! Temperatura krytyczna!")
elif temperatura > 80:
    print("Uwaga – temperatura wysoka")
elif temperatura > 50:
    print("Temperatura w normie")
else:
    print("Temperatura niska")

# Operatory logiczne: and, or, not
wilgotnosc = 70
if temperatura > 80 and wilgotnosc > 60:
    print("Warunki niekomfortowe!")

Zwróć uwagę na wcięcia (indentację). W Pythonie to właśnie wcięcia określają, które linie należą do danego bloku – nie nawiasy klamrowe jak w C czy Java. Standardem są 4 spacje.

Pętle – for i while

Pętle pozwalają powtarzać operacje bez pisania tego samego kodu wiele razy. Python oferuje dwa rodzaje pętli: for (iteracja po elementach) i while (powtarzanie dopóki warunek jest spełniony).

petle.py
# Pętla for – iteracja po liście
czujniki = ["temp", "ciśnienie", "przepływ"]
for czujnik in czujniki:
    print(f"Odczyt: {czujnik}")

# Pętla for z range()
for i in range(5):
    print(f"Krok {i}")  # 0, 1, 2, 3, 4

# Pętla while
licznik = 0
while licznik < 3:
    print(f"Iteracja {licznik}")
    licznik += 1

# break i continue
for i in range(10):
    if i == 5:
        break       # przerywa pętlę
    if i % 2 == 0:
        continue    # pomija resztę i idzie dalej
    print(i)       # wypisze: 1, 3

Funkcje – organizacja kodu

Funkcje pozwalają grupować powtarzalny kod w nazwane bloki, które można wywoływać wielokrotnie. Definiujesz je słowem kluczowym def. Funkcje mogą przyjmować argumenty i zwracać wartości.

funkcje.py
# Prosta funkcja
def powitanie(imie):
    print(f"Cześć, {imie}!")

powitanie("Marcin")  # Cześć, Marcin!

# Funkcja z wartością zwracaną
def oblicz_srednia(wartosci):
    return sum(wartosci) / len(wartosci)

temperatury = [22.5, 23.1, 21.8, 24.0]
wynik = oblicz_srednia(temperatury)
print(f"Średnia: {wynik:.1f}°C")  # Średnia: 22.9°C

# Argumenty domyślne
def polacz(host, port=502):
    print(f"Połączenie z {host}:{port}")

polacz("192.168.1.10")        # port=502
polacz("192.168.1.10", 5020) # port=5020

Listy – kolekcje danych

Lista to uporządkowana kolekcja elementów, które mogą być różnych typów. To jeden z najczęściej używanych typów w Pythonie – przechowujesz w nich dane z czujników, wyniki obliczeń, nazwy plików itp.

listy.py
# Tworzenie listy
odczyty = [23.5, 24.1, 22.8, 25.0, 23.9]

# Dostęp do elementów (indeksowanie od 0)
print(odczyty[0])    # 23.5 – pierwszy
print(odczyty[-1])   # 23.9 – ostatni

# Dodawanie elementów
odczyty.append(26.2)
print(odczyty)  # [23.5, 24.1, 22.8, 25.0, 23.9, 26.2]

# Wycinanie (slicing)
print(odczyty[1:4])  # [24.1, 22.8, 25.0]

# Przydatne metody
print(len(odczyty))   # 6  – długość
print(min(odczyty))   # 22.8 – minimum
print(max(odczyty))   # 26.2 – maksimum
print(sorted(odczyty)) # posortowana kopia

# List comprehension – tworzenie list w jednej linii
kwadrat = [x**2 for x in range(1, 6)]
print(kwadrat)  # [1, 4, 9, 16, 25]

Słowniki – dane klucz-wartość

Słownik (dict) przechowuje dane w parach klucz: wartość. Dzięki temu możesz szybko wyszukiwać dane po nazwie zamiast po numerze indeksu. To idealny sposób na przechowywanie konfiguracji, danych z czujników czy parametrów maszyn.

slowniki.py
# Tworzenie słownika
czujnik = {
    "nazwa": "Czujnik temperatury",
    "model": "PT100",
    "wartosc": 23.5,
    "aktywny": True
}

# Odczyt wartości
print(czujnik["nazwa"])      # Czujnik temperatury
print(czujnik.get("model"))    # PT100

# Dodawanie/zmiana
czujnik["lokalizacja"] = "Hala A"
czujnik["wartosc"] = 24.1

# Iteracja po słowniku
for klucz, wartosc in czujnik.items():
    print(f"{klucz}: {wartosc}")

Operacje na tekstach (stringach)

Stringi w Pythonie to potężny typ danych z dziesiątkami wbudowanych metod. Oto najważniejsze operacje, które będziesz używać na co dzień:

stringi.py
tekst = "Python jest super"

# Metody stringów
print(tekst.upper())        # PYTHON JEST SUPER
print(tekst.lower())        # python jest super
print(tekst.replace("super", "świetny"))
print(tekst.split())         # ['Python', 'jest', 'super']
print(tekst.startswith("Python"))  # True

# f-stringi – formatowanie tekstu
imie = "Jan"
wiek = 30
print(f"Jestem {imie} i mam {wiek} lat")

# Łączenie stringów
czesci = ["2025", "03", "15"]
data = "-".join(czesci)
print(data)  # 2025-03-15

Obsługa plików

Python świetnie radzi sobie z odczytem i zapisem plików. Najczęściej używana jest konstrukcja with open(), która automatycznie zamyka plik po zakończeniu pracy.

pliki.py
# Zapis do pliku
with open("dane.txt", "w") as plik:
    plik.write("Linia pierwsza\n")
    plik.write("Linia druga\n")

# Odczyt całego pliku
with open("dane.txt", "r") as plik:
    zawartosc = plik.read()
    print(zawartosc)

# Odczyt linia po linii
with open("dane.txt", "r") as plik:
    for linia in plik:
        print(linia.strip())

# Dopisywanie do pliku (append)
with open("dane.txt", "a") as plik:
    plik.write("Nowa linia\n")

Tryby otwierania pliku: „r” – odczyt, „w” – zapis (nadpisuje), „a” – dopisywanie, „rb”/”wb” – tryb binarny.

Obsługa błędów – try/except

Błędy w programie nie muszą oznaczać awarii. Dzięki mechanizmowi try/except możesz „złapać” błąd i obsłużyć go w kontrolowany sposób – np. wyświetlić komunikat, zapisać log lub spróbować ponownie.

bledy.py
# Podstawowa obsługa błędów
try:
    wynik = 10 / 0
except ZeroDivisionError:
    print("Nie można dzielić przez zero!")

# Obsługa wielu typów błędów
try:
    liczba = int(input("Podaj liczbę: "))
    wynik = 100 / liczba
except ValueError:
    print("To nie jest liczba!")
except ZeroDivisionError:
    print("Nie dziel przez zero!")
else:
    print(f"Wynik: {wynik}")
finally:
    print("Koniec programu")

Blok else wykona się tylko gdy nie było błędu, a finally wykona się zawsze – niezależnie od tego czy błąd wystąpił czy nie. To ważne np. przy zamykaniu połączeń z bazą danych lub PLC.

Moduły i biblioteki

Siła Pythona tkwi w modułach – gotowych paczkach kodu, które możesz importować do swojego programu. Python ma bogatą bibliotekę standardową (np. os, math, datetime, json), a tysiące dodatkowych bibliotek zainstalujesz przez pip.

moduly.py
# Importowanie całego modułu
import math
print(math.sqrt(144))    # 12.0
print(math.pi)           # 3.14159...

# Import konkretnej funkcji
from datetime import datetime
now = datetime.now()
print(f"Dzisiaj: {now.strftime('%Y-%m-%d %H:%M')}")

# Import z aliasem
import os
print(os.getcwd())       # bieżący katalog
print(os.listdir("."))   # pliki w katalogu

# Instalacja zewnętrznych bibliotek
# pip install requests pandas matplotlib

Praktyczny projekt – analizator temperatury

Pora połączyć wszystko w praktyczny projekt! Napiszemy skrypt, który wczytuje odczyty temperatury, oblicza statystyki i generuje raport tekstowy.

analizator.py
from datetime import datetime

def analizuj_temperature(odczyty):
    """Analizuje listę odczytów temperatury."""
    if not odczyty:
        return "Brak danych!"

    srednia = sum(odczyty) / len(odczyty)
    minimum = min(odczyty)
    maksimum = max(odczyty)
    alarmy = [t for t in odczyty if t > 80]

    return {
        "srednia": round(srednia, 1),
        "min": minimum,
        "max": maksimum,
        "ilosc_odczytow": len(odczyty),
        "alarmy": len(alarmy)
    }

# Dane testowe
temperatury = [
    22.5, 23.1, 45.8, 67.2, 82.0,
    91.5, 55.3, 34.7, 78.9, 41.2
]

wynik = analizuj_temperature(temperatury)

# Zapis raportu
with open("raport.txt", "w") as f:
    f.write(f"=== Raport temperatury ===\n")
    f.write(f"Data: {datetime.now()}\n")
    for k, v in wynik.items():
        f.write(f"{k}: {v}\n")

print("Raport zapisany do raport.txt")

Ten skrypt łączy w sobie: funkcje, listy, słowniki, list comprehension, obsługę plików i formatowanie stringów. To świetny przykład tego, jak kilka podstawowych koncepcji Pythona pozwala budować praktyczne narzędzia.

Gdzie dalej? Naucz się Pythona z nami

Ten artykuł to dopiero początek. Jeśli chcesz systematycznie opanować Pythona z naciskiem na praktyczne zastosowania w automatyce i przemyśle, sprawdź nasz kurs Python od podstaw. Cały kurs prowadzimy w Visual Studio Code – od pierwszego skryptu po zaawansowane projekty z PLC. Omawiamy też komunikację ze sterownikami (Snap7, Modbus), przetwarzanie danych produkcyjnych, generowanie raportów i wiele więcej.

Kurs prowadzony jest krok po kroku, z ćwiczeniami i projektami – idealny dla osób, które chcą szybko zobaczyć efekty swojej nauki.

FAQ – często zadawane pytania

Czy Python jest trudny do nauki?

Nie – Python jest uważany za jeden z najlepszych języków do nauki programowania. Jego składnia jest zbliżona do naturalnego języka angielskiego, nie wymaga kompilacji i daje szybkie efekty. Większość osób pisze swoje pierwsze działające programy już w pierwszych godzinach nauki.

Python 2 czy Python 3 – którego używać?

Zawsze Python 3. Python 2 został oficjalnie wycofany ze wsparcia w styczniu 2020 roku. Wszystkie nowe projekty, biblioteki i kursy bazują na Pythonie 3. Aktualna stabilna wersja to Python 3.12+.

Jaki edytor kodu wybrać na początek?

Zdecydowanie Visual Studio Code (VSCode) – jest darmowy, lekki i ma świetne wsparcie dla Pythona dzięki rozszerzeniu Python (Microsoft). Oferuje podpowiadanie składni, debugger, zintegrowany terminal i tysiące rozszerzeń. W naszym kursie Python od podstaw pracujemy wyłącznie w VSCode – pokazujemy jak go skonfigurować, jakie rozszerzenia zainstalować i jak efektywnie z niego korzystać.

Ile czasu potrzeba, żeby nauczyć się Pythona?

Podstawy (zmienne, pętle, funkcje, pliki) można opanować w 2–4 tygodnie regularnej nauki. Aby czuć się swobodnie z bibliotekami, obsługą błędów i projektami – potrzeba około 2–3 miesięcy. Kluczem jest regularna praktyka i pisanie własnego kodu, nie tylko czytanie teorii.

Czy Python nadaje się do automatyki przemysłowej?

Jak najbardziej! Python świetnie sprawdza się w automatyce – od komunikacji ze sterownikami PLC (Modbus, Snap7, OPC UA), przez analizę danych produkcyjnych, po tworzenie dashboardów i systemów SCADA. W naszym kursie Python od podstaw całą praktykę realizujemy w VSCode – pokazujemy jak krok po kroku budować projekty komunikacji z PLC.

Podsumowanie

W tym artykule poznałeś najważniejsze podstawy Pythona: zmienne i typy danych, operatory, instrukcje warunkowe, pętle, funkcje, listy, słowniki, operacje na stringach, obsługę plików, wyjątki i moduły. To solidny fundament, na którym możesz budować coraz bardziej zaawansowane projekty.

Pamiętaj – najlepszą metodą nauki programowania jest pisanie kodu. Nie czytaj tylko teorię – odpal VSCode, stwórz plik .py i zacznij eksperymentować. Każdy błąd i każdy rozwiązany problem to krok naprzód.

Jeśli chcesz pójść dalej i nauczyć się Pythona w kontekście automatyki przemysłowej – dołącz do naszego kursu. Pracujemy w VSCode, zaczynamy od podstaw i dochodzimy do zaawansowanych projektów z prawdziwymi sterownikami PLC.

O autorze

Szymon Adamek

Author Szymon Adamek

Automatyk, Dyrektor w ControlByte

Więcej postów tego autora Szymon Adamek