Rumah >pembangunan bahagian belakang >Tutorial Python >Membuat Aplikasi Web adalah sangat MUDAH dengan Streamlit
Streamlit adalah jenis yang popular dalam kalangan saintis data kerana anda tidak memerlukan pengetahuan frontend secara umum.
Ia menyediakan elemen dan widget yang ringkas dan mudah dilaksanakan tanpa menulis banyak kod.
Saya menggunakan streamlit beberapa kali dalam projek ML/AI saya, dan pengalaman itu hebat. Anda boleh lebih memfokuskan pada menulis logik dan bahagian hadapan (reka bentuk, reka letak dan banyak lagi) dikendalikan dengan sangat baik oleh streamlit.
Saya mencipta aplikasi web demo menggunakan streamlit dan Python supaya anda boleh memahami apa yang saya katakan.
Apl web ini adalah tentang menukar format imej kepada format lain, contohnya, jika imej anda dalam format PNG, anda boleh menukarnya kepada imej JPEG.
Kod berikut menjadikan antara muka pengguna apl web.
import streamlit as st from imgconvrtr import convert_img_format from PIL import Image # Webpage setup st.set_page_config(page_title="Image Convrtr") st.title("Image Converter") st.write("Convert your images in one _click_") # File uploader uploaded_file = st.file_uploader( "Upload an image", type=["png", "jpg", "jpeg", "jfif", "bmp"] ) if uploaded_file is not None: # Show the uploaded image img = Image.open(uploaded_file) st.image(img, caption="Uploaded Image", use_column_width=True) # Show original image format st.write(f"Original format: {img.format}") # Output format selection format_options = ["PNG", "JPEG", "JFIF", "BMP"] output_format = st.selectbox("Choose output format", format_options) # Convert the image if img.format != output_format: if st.button("Convert"): converted_img = convert_img_format(uploaded_file, output_format.lower()) st.write(f"Image converted to {output_format}") # Download button st.download_button( label=f"Download as {output_format}", data=converted_img, file_name=f"image.{output_format.lower()}", mime=f"image/{output_format.lower()}" ) else: st.write("Select a different format... Yo!")
Kini anda sudah mempunyai idea ringkas tentang perkara yang dilakukan oleh aplikasi web ini. Kita boleh terus membincangkan komponen yang digunakan dalam kod ini.
Pada mulanya, anda boleh melihat elemen halaman seperti st.title dan st.write yang digunakan untuk menetapkan tajuk halaman dan memaparkan teks pada halaman, masing-masing.
Seterusnya, anda boleh melihat widget untuk memuat naik fail (dalam kes ini digunakan untuk memuat naik imej). Lihat betapa mudahnya untuk membuat pemuat naik fail.
st.image digunakan untuk memaparkan imej yang dimuat naik oleh pengguna.
Kemudian kami mempunyai menu lungsur untuk memilih pelbagai format yang dibuat menggunakan widget kotak pilihan (st.selectbox).
Kini, anda boleh lihat kami mempunyai dua butang (st.button dan st.download_button). Kedua-duanya adalah sama tetapi ini semua tentang kemudahan.
Butang st.memaparkan widget butang yang kami gunakan di sini untuk penukaran imej.
Button st.download_membuatnya berguna apabila pengguna perlu memuat turun terus fail daripada apl.
Streamlit menyediakan pelbagai elemen dan widget untuk tujuan yang berbeza.
Sekarang jika anda ingin mencuba aplikasi web ini, anda perlu memasang perpustakaan yang diperlukan:
pip install streamlit pillow
Berikut ialah fungsi penukaran imej:
from PIL import Image import io # Function to convert image format def convert_img_format(image_file, frmat): with Image.open(image_file) as img: output_img = io.BytesIO() img.save(output_img, format=frmat.upper()) output_img.seek(0) return output_img
Jalankan apl menggunakan arahan berikut:
streamlit run <script_name>.py
Ganti dengan nama skrip sebenar.
Itu sahaja buat masa ini.
Teruskan Pengekodan✌✌
Atas ialah kandungan terperinci Membuat Aplikasi Web adalah sangat MUDAH dengan Streamlit. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!