Pada awal November saya melihat pengumuman keluaran untuk Rio (https://rio.dev), perpustakaan Python yang akan datang untuk mencipta antara muka pengguna. Saya mempunyai pengalaman bertahun-tahun menggunakan Qt dengan Python dan sentiasa berminat untuk melihat pendekatan baharu.
Saya telah melalui tutorial Tic Tac Toe dan menemui banyak perkara yang saya suka. Saya pada mulanya kagum dengan kesederhanaan menulis antara muka menggunakan kelas komponen. Antara muka berjalan melalui dokumen HTML, yang dikapsulkan sepenuhnya oleh perpustakaan. Ini memberikan banyak kemungkinan tentang bagaimana dan di mana aplikasi Rio dijalankan. Rio secara pilihan menyertakan aplikasi paparan web kendiri. Walau bagaimanapun, saya secara kritis tidak menyukai alat baris arahan rio yang disertakan dan struktur projek awal yang diciptanya.
Saya rasa Rio berhak mendapat tutorial yang lebih ringan yang menghilangkan boilerplate dan abstraksi untuk menunjukkan potensi perpustakaan ini. Mari kita mulakan daripada tiada dan temui perasaan Rio membinanya untuk diri kita sendiri. Saya dapati bermula dengan uv adalah semudah yang saya harapkan.
uv init minirio --no-readme --no-pin-python --vcs none cd minirio uv add rio-ui[window]
Ciri [tetingkap] pilihan memasang banyak kebergantungan yang diperlukan untuk menjalankan apl kendiri. Juga sedar saya perlu menggunakan ==9.3 pada Windows kerana tiada binaan pyside.
Mari kita gunakan kod minimum yang diperlukan untuk membina aplikasi ini.
import rio class Greeting(rio.Component): name: str = 'World' def build(self): return rio.Row( rio.Icon('material/star', align_x=0.8, align_y=0.5), rio.Markdown(f'Hello, **{self.name}**', align_y=0.5), ) if __name__ == '__main__': app = rio.App(build=Greeting) app.run_in_window()
Ini ialah skrip Python biasa. Jalankan dengan penterjemah python anda.
uv run hello.py
Komponen adalah lebih daripada kaedah binaan yang mengembalikan komponen dan keadaan yang ditakrifkan pada kelas. Anda tidak mentakrifkan __init__ atau boilerplate biasa yang lain. Anda boleh menggantikan run_in_window dengan run_as_web_server dan berinteraksi dengan aplikasi ini dalam penyemak imbas anda.
Ia memerlukan sedikit masa untuk menambah beberapa interaktiviti. Berikut ialah komponen serupa yang menambahkan kotak pilihan dan penggayaan.
kecerunan = rio.LinearGradientFill( (rio.Color.RED, 0), (rio.Color.PINK, .3), ) salam kelas2(rio.Component): diperiksa: bool = False binaan def(diri): style = rio.TextStyle(fill=gradient) jika self.checked else 'text' kembalikan rio.Row( rio.Checkbox(is_on=self.bind().checked), rio.Text('Mawar berwarna merah.',> <p>Ini menggunakan self.bind() untuk mencipta pengikatan dua hala antara keadaan kotak semak dan atribut. Sebagai alternatif, adalah mudah untuk memberikan argumen on_change kotak pilihan kepada sebarang kaedah dan menukar atribut diri seperti yang dikehendaki.</p> <p><img src="/static/imghwm/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/173599336588947.jpg?x-oss-process=image/resize,p_40" class="lazy" alt="Minimal Rio Intro"></p> <p>Dapatkan contoh dan dokumentasi yang lebih lengkap di tapak web projek Rio. Secara peribadi, saya belum bersedia untuk meninggalkan dunia Qt dan Pyside, tetapi saya juga rasa masih cukup di Rio untuk diperhatikan.</p>
- https://rio.dev/examples
- https://rio.dev/docs
- https://github.com/rio-labs/rio
Atas ialah kandungan terperinci Pengenalan Rio Minimal. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Sintaks asas untuk pengirim senarai python adalah senarai [Mula: Berhenti: Langkah]. 1. Start adalah indeks elemen pertama yang disertakan, 2.Stop adalah indeks elemen pertama yang dikecualikan, dan 3. Step menentukan saiz langkah antara elemen. Hirisan tidak hanya digunakan untuk mengekstrak data, tetapi juga untuk mengubah suai dan membalikkan senarai.

ListsOutPerFormAraySin: 1) DynamicsizingandFrequentInsertions/Deletions, 2) StoringHeterogeneousData, dan3) MemoryeficiencyForSparsedata, ButmayHaveslightPerformancecostSincertaor.

ToConvertapythonarraytoalist, usethelist () constructororageneratorexpression.1) importTheArrayModuleAndCreateeanArray.2) uselist (arr) atau [xforxinarr] toConvertittoalist, urusanPengerasiPormanceAndMemoryeficiencyForlargedatasets.

ChoosearraysoverListSinpythonforbetterperformanceandMemoryeficiencySpecificscenarios.1) largenumericaldatasets: arraysreducememoryusage.2) Prestasi-CRITICALICALLY:

Di Python, anda boleh menggunakan gelung, menghitung dan menyenaraikan pemantauan ke senarai melintasi; Di Java, anda boleh menggunakan tradisional untuk gelung dan dipertingkatkan untuk gelung untuk melintasi tatasusunan. 1. Kaedah Traversal Senarai Python termasuk: untuk gelung, penghitungan dan pemahaman senarai. 2. Java Array Traversal Kaedah termasuk: tradisional untuk gelung dan dipertingkatkan untuk gelung.

Artikel ini membincangkan pernyataan baru "Match" Python yang diperkenalkan dalam versi 3.10, yang berfungsi sebagai setara dengan menukar pernyataan dalam bahasa lain. Ia meningkatkan kebolehbacaan kod dan menawarkan manfaat prestasi ke atas tradisional if-elif-el

Kumpulan Pengecualian dalam Python 3.11 Membenarkan mengendalikan pelbagai pengecualian secara serentak, meningkatkan pengurusan ralat dalam senario serentak dan operasi kompleks.

Fungsi anotasi dalam python Tambah metadata ke fungsi untuk pemeriksaan jenis, dokumentasi, dan sokongan IDE. Mereka meningkatkan kebolehbacaan kod, penyelenggaraan, dan penting dalam pembangunan API, sains data, dan penciptaan perpustakaan.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Dreamweaver CS6
Alat pembangunan web visual

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.
