Python_Notatki Z12



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.





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).

