Python_Notatki Z12

Python_Notatki Z12
Photo by Thor Alvis / Unsplash

Replit – Build software faster
Replit is an AI-powered software development & deployment platform for building, sharing, and shipping software fast.

Replit - Umożliwia programowanie w przeglądarce.

Streamlit nie można uruchomić przyciskiem play w VS code. To jest framework webowy i musi uruchomić nam jakiś serwer na kompie, oraz interfejs pojawi się w przeglądarce.

replit: to, co uruchomiamy musi być w main.py

replit instaluje biblioteki automatycznie jeżeli są w kodzie wywołane.

Nie ma potrzeby cały czas pisać streaml run, tylko można po zmianach w pliku zapisać plik i wcisnąć rerun w przeglądarce, lub wybrać always rerun.

API Reference - Streamlit Docs
st.set_page_config(page_title="tytuł mojej apki")

st.write obsługuje markdown.

Wtyczka do vs code black, aby umożliwić przeniesienie argumentów w nawiasach na kolejne linijki.

Można ze streamlit za darmo udostępnić swoja appke na community cloud.

Przy wciskaniu button cała strona jest przeładowywana. Uważaj na to!!!

Formularze w streamlit:

radiobutton st.radio


zakres_wyboru = 4
mozliwosci = ["K4", "K6", "K8", "K10", "K12", "K20"]

kostka = st.radio(
    label="Jaka kostka",
    options=mozliwosci
)

# if kostka == "K4":
#     zakres_wyboru = 4
# elif kostka == "K6":
#     zakres_wyboru = 6
# elif kostka == "K8":
#     zakres_wyboru = 8
# elif kostka == "K10":
#     zakres_wyboru = 10
# elif kostka == "K12":
#     zakres_wyboru = 12 
# else:
#     zakres_wyboru = 20 

zakres_wyboru = int(kostka.replace("K", ""))

losowanie = st.button(label="Wylosuj!")

if losowanie:
    st.write(f"# :rainbow[Wylosowałeś **{random.randint(1, zakres_wyboru)}**]")
    

Domyślnie streamlit nie przechowuje stanu zmiennych. Po wciśnięciu przycisku cały program odświeża stronę i zaczyna wykonanie kodu od początku. Dlatego istnieje funkcja zapisywania stanu sesji.

Wszystko wewnątrz formularza (form) nie jest odświeżane, póki nie wciśniesz submit (lub inny przycisk odpowiadający za to)

słówko with — kontekst manager....?

W każdym formularzu powinien się pojawić przycisk submit (prześlij, lub coś takiego).