Python zajęcia 9

Python zajęcia 9
Photo by Shahadat Rahman / Unsplash

🧠 Funkcje w Pythonie – Tworzenie i Zastosowanie

📦 Funkcje wbudowane i z bibliotek

Do tej pory korzystaliśmy z funkcji wbudowanych, takich jak print(), len(), oraz z funkcji dostarczanych przez moduły.

✍️ Tworzenie własnej funkcji -nasze czasowniki 

Aby stworzyć własną funkcję, używamy słowa kluczowego def, po którym następuje nazwa funkcji, nawiasy z opcjonalnymi parametrami, oraz dwukropek. Ciało funkcji zapisujemy w wcięciu.

def nasza_nazwa_funkcji 
  return zwaracana_wartosc

🔧 Parametry funkcji  to zmienne przekazywane do funkcji, które pozwalają jej działać na różnych danych.

🔙 Wartość zwracana przez funkcję

Funkcja może zwracać wynik za pomocą słowa kluczowego return.

🎩 Funkcyjny savoir-vivre

🗣️ Informowanie o typach parametrów i zwracanej wartości np.

def dodaj(a: int, b: int) -> int:
    return a + b
def przywitaj(imie: str) -> str:
    return f"Cześć, {imie}!"

W Pythonie zapis -> None w definicji funkcji oznacza, że funkcja nie zwraca żadnej wartości — czyli jej celem jest wykonanie jakiejś akcji, a nie obliczenie wyniku

GUI (Graphical User Interface) to graficzny interfejs użytkownika. Idealne dla użytkowników codziennych, grafików, początkujących.

CLI (Command Line Interface) to tekstowy interfejs użytkownika - wpisywanie komend w terminalu. Niezastąpione dla administratorów, programistów, automatyzacji.

🌟Dostępne biblioteki GUI dla Pythona

Biblioteka

Opis i zastosowanie

Tkinter

Wbudowana w Pythona. Do prostych aplikacji. 

PyQt / PySide

Interfejsy do frameworka Qt. Nowoczesny wygląd, idealne do dużych aplikacji.

GTK (PyGObject)

Darmowa. Dobrze integruje się z Linuxem.

Kivy

Do aplikacji mobilnych. Działa na Androidzie i iOS.

Dear PyGui

Skierowana do aplikacji naukowych, wizualizacji danych. 

Flet

Do tworzenia aplikacji webowych i desktopowych z Pythona.

🧱 Podstawowa struktura aplikacji w Flet (aplikacje w framework-iem flet uruchamiany poprzez flet run nazwapliku.py)

import flet  
def main(page: flet.Page):     
page.title = "Jakis tytul" 
# tytul okna     
# Deklaracja komponentów (przyciski etc)    
 page.add( # dodanie komponentów     )  
flet.app(main)

🎒 Praca domowa - arkusz do wprowadzania pytań i odpowiedzi do Flet-a

import flet

def main(page: flet.Page):
    page.title = "Arkusz Pytań i Odpowiedzi ku rozpoznaniu potraw wszelakich i smaków zacnych 🍖"  
    page.theme_mode = flet.ThemeMode.LIGHT
    page.bgcolor = flet.Colors.BROWN_200

    def zapisywanie_ankiety(pytanie: str, odpowiedz: str) -> str:
        return pytanie
            

    tekst_pytanie = flet.Text(
        value="W tem miejscu zapisz pytanie, które serce twe nurtuje, a odpowiedź, którą rozum twój podaje ku pożytkowi wiedzy o strawie wszelakiej ✒️",
        size=20,

    )
    wpr_pyt = flet.TextField(
        label="Niechaj tu stanie pytanie:",
        text_size=20
        )  


    wpr_odp1 = flet.TextField(
        label = "Niechaj tu stanie pierwsza odpowiedź")
    wpr_odp2 = flet.TextField(
        label = "Niechaj tu stanie druga odpowiedź")
    wpr_odp3 = flet.TextField(
        label = "Niechaj tu stanie trzecia odpowiedź")

    page.add(
        tekst_pytanie,
        wpr_pyt,
        wpr_odp1,
        wpr_odp2,
        wpr_odp3
    )

flet.app(main)