作者papple23g (逆道者)
看板Python
標題Re: 老師我卡關了!求教
時間Wed Mar 4 14:32:11 2020
如果你像我一樣不熟Javascript,但只是求個簡單的前端介面
那我會推薦使用Brython
以下是根據你的code寫的一個DEMO網頁
(你的code在第22~39行)
https://codepen.io/papple23g/pen/YzXxdzB?editors=1000
預覽圖
https://i.imgur.com/0O4jb6z.png
其中Brython的print()結果是以console log的方式呈現,所以要按F12開啟控制台才看得
到輸出結果
我Brython用了很多年,現在依然很喜歡用它
把它拿去跟後端的Django合起來也幾乎是無縫接軌
個人也用這方法寫了兩個網站,網頁原始碼的9成以上都是用Python寫的XD (是多討厭JS?)
噗浪表符庫:
https://papple23g-mysite2.herokuapp.com/PlurkEmojiHouse
AHK語法產生器:
https://papple23g-ahkcompiler.herokuapp.com/ahktool
也因為Brython有置入元素的功能,所以排版和樣式(CSS)也可以獨立完成
目前已知Brython有一些缺點:
1.只支援部分的標準函式庫,無法使用常見的第三方模組(numpy、pandas)
但是依然可以偷一些好用的JS庫直接拿進Brython裡來用
例如我曾經融合P5.js寫了一個單擺彈簧的模擬
https://codepen.io/papple23g/pen/YmyYev?editors=1000
2.使用標準函式庫的時候,載入的時間會比較長
以3.7.5版來說,如果程式碼沒有用到標準函式庫的話,只需要載入六百多KB的
brython.js
但完整的標準庫需要載入3.3MB的brython_stdlib.js
然而如果只有用到少數幾個標準模組的話,官方有提供優化的方法
我自己也用異步加載的方式稍微改善一點點這個問題 (雖然整體還是不夠快..XD)
希望能幫助到想用Python寫前端的人 =)
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.216.6.172 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1583303535.A.50C.html
※ 編輯: papple23g (61.216.6.172 臺灣), 03/04/2020 14:36:31
※ 編輯: papple23g (61.216.6.172 臺灣), 03/04/2020 14:39:41
推 cuteSquirrel: push 03/04 14:51
推 dogppatrick: 彈簧單擺好玩 03/04 16:57
推 gundam778: 靠、也太誇張了吧! 03/04 18:42
→ gundam778: 竟然為我寫一新的、還付頁面和解 03/04 18:42
→ gundam778: 很感謝你T.T 03/04 18:42
→ gundam778: 正如code內解說所的話, brython完全是個代替JS的東西吧 03/04 18:42
→ gundam778: ?直接掛在html內編輯,然後通通運算掉上去就可以了嗎? 03/04 18:42
→ gundam778: 想不有這麼好康的東西!那麼我應該只補一點html就可以 03/04 18:42
→ gundam778: 做出web app@@ 03/04 18:42
推 froce: 等webassembly成熟吧 03/06 12:40
→ froce: 這個我是覺得自己少量用很方便,但是真的要大一點的程式, 03/06 12:44
→ froce: 或複雜一點的UI,js還是必學。 03/06 12:44
→ froce: 尤其是現在前端框架好用很多,像是vue真的很好用 03/06 12:44