现在 Python 开发 GUI 用什么框架? 因项目需要使用 GUI

hhhhhh1233天前0

如题, 想知道现在 GUI 开发用什么框架? 框架的有点和缺点 。 也可以留个名字, 我自己查。最好是流行的。。很多公司都用的。, 这样对自己也好。嘿嘿。 谢谢啦!

最新回复 (44)
  • ttgo3天前
    引用2
    qt6?
  • kanari3天前
    引用3
    pyqt?
  • 楼主hhhhhh1233天前
    引用4
    都是 推荐这个吗? 市面上 很多公司都是用这个吗? @kanari @ttgo
  • cqroot3天前
    引用5
    pysider2
  • bavtoex3天前
    引用6
    python 小白,开发一些自用的小工具,用了 qt5 还挺方便的,用的是 PySide2 这个库
  • westoy3天前
    引用7
    有没有一种可能, 现在已经没人拿 python 写 GUI 了......
    以前 CPyUG 也见过不少人讨论 pywin32 、pygtk 、wxpython 、pyqt 、pyside , 但是正经拿来写的也不多, 印象里有点热度的还是诺基亚卖掉 qt 之前, 最近五六年都没见过有这方面讨论了......手头用过的也就 linux 下面有一些 pytk 写的流水工具, 出名点的有印象的也就 displaycal 用的 wxpython
  • cqroot3天前
    引用8
    PySide2 或者 PyQt
  • kanari3天前
    引用9
    @hhhhhh123 我公司是,看看其他老哥
  • cxsz3天前
    引用10
    复杂项目上 pyqt ,界面好看,成熟的组件比较多,开发也比较快,但日常的小脚本,我一般用自带的 tkinter
  • cqroot3天前
    引用11
    现在写界面大多 electron ,nw.js ,工业上 Qt 、C#,必须要用 python 的话就选 qt 系的吧
  • 楼主hhhhhh1233天前
    引用12
    感谢各位的意见 ,
  • iamxcd1233天前
    引用13
    公司项目的话建议 pyqt ,如果自己写的小脚本小程序自带的 tkinter 就足够。
    哈哈,顺便打个广告
    自己写的一个 tkinter 布局小工具
    https://zhuanlan.zhihu.com/p/532678277
  • 引用14
    qt 好像有授权问题
  • HITMengbin3天前
    引用15
    pyqt ,使用 qtdesigner 速度很快
  • dcsuibian3天前
    引用16
    PyQt ,但正经项目用这个的好像不多。Qt 的倒是不少。
    或者走弯路,用 Web 技术做 GUI ,Python 做服务器。这样别说 Electron 了,甚至可以直接在网页上展示。而且生态圈成熟。但看应用场景,这可能会使得 Python 的地位很尴尬。
  • 00ing3天前
    引用17
    pyqt 或 pysider 其他不建议了
  • BingoXuan3天前
    引用18
    pywebview ,用 web 写 ui 。本质类似于 go 的 wails 或者 rust 的 tauri 。调用系统 webview 作为主界面,用 web 技术开发
  • roundgis3天前
    引用19
    Pyside2
  • Yunen3天前
    引用20
    一般这种情况我都选择 web ,哈哈
  • Buges3天前
    引用21
    有个 pysimplegui ,给一些小脚本或 ml 项目加个界面很方便。
    当然正经的 gui app 项目,只建议 pyside6 。
  • Mark243天前
    引用22
    QT 要收费
  • txfly3天前
    引用23
    pyside6 ,pygobject ,kivy
  • FrankHB3天前
    引用24
    @westoy 一时间不可能没人写。
    至少 TortoiseHg 还有活人维护。
    另外我就因为一时半会儿撸不出一个 Qt 而被迫得抄 Shiboken……(虽然这严格上不算用 Python 写,但是至少得抄点 demo )。
  • 引用25
    用过 python 的一些 gui 。
    我的看法是前后端分离,前端用 web 实现。
    pyqt 有很多 bug ,有一定中文资料,但是有的小问题还是搜不到答案,非常不好用,非常不建议用于长期维护。
    pysider 的中文资料很少,偶尔会和 pyqt 冲突。
    pyqt 商用收费,印象中上万吧? pysider 似乎不收费?
    个人娱乐用 tinker 之类的倒是无所谓。
  • 引用26
    @dcsuibian 小型应用快速部署,没有大规模并发,这就到不了 python 服务器端的瓶颈,何谈 Python 地位尴尬。
    反过来理解,难道用 pyqt 实现桌面端,python 就突然失去了之前存在的问题?
  • SenLief3天前
    引用27
    python 打包后体积都比较大,直接起个 web 好了,这玩意当 gui 多好。
  • anmu3天前
    引用28
    PyQt
  • 引用29
    直接用网页画,pyqt 也不好用。
  • dcsuibian3天前
    引用30
    @nyxsonsleep 不是那个意思。
    我之前想 Java 配合 Electron 做客户端程序。一个做核心、一个做界面,后来发现比较鸡肋。
    1 、如果是离线应用,比如 picgo ,核心部分直接用 nodejs 写算了。js 调 js 方便太多了,而且打包也好打。(尽管我对 Java 更熟悉,但用 js 利大于弊)
    2 、如果是在线应用,需要调后台接口,那基本就是做 web 了,这个是没问题。但客户端的必要性就很大程度上削弱了。
    当然,应用场景还是有的。比如 B 站的客户端(从 web 转过来的)、Telegram 的客户端、ClashX (核心是别人 Go 开发的)这样的。Python 的话,如果是后台深度学习,做个 GUI 程序方便人家调公司的接口倒也没问题。
    主要就是 js 会削弱原语言的不可替代性。万一整半天换语言了就比较尴尬
  • @dcsuibian 可以看看 Blazor
  • FrankHB3天前
    引用32
    @nyxsonsleep 关键不是 py ,而是开发桌面应用就算不用 py ,会遇到纯 qt 的问题;不用 qt ,基本上会有比 qt 本身更糟糕的问题(特别是规模稍微一大的时候),横竖都得忍。
    用 py+qt 会有 py 的问题+qt 的问题,但对许多用户看起来会比直接用 qt 的问题少。而现在用其它+qt 是没那么可行的。
    当然,移植现成品另说(但能在桌面上移植的东西里不少已经是 qt 的形状了)。
    @SenLief 一不小心直接卡翔就有的哭了,打包就忍忍吧。
    简单到一定地步是没那么夸张,但这样打包大就更心烦了。
  • 引用33
    @dcsuibian
    换语言这种只要不是个傻子项目经理就不会同意的,qq 微信写成这个样我也没看他们换语言。
    至于后端程序用什么语言取决于需求,能达到同样的目的,用什么语言都一样。
  • MinQ3天前
    引用34
    pyqt 你会遇到 python 和 qt 各自糟心的地方叠加在一起,我们是用 python 写了底层,然后用 C#写了界面,中间用 pythonnet 调用
  • roundgis3天前
    引用35
    @MinQ 打包發佈會不會很麻煩?
  • youthfire3天前
    引用36
    直接用的 tkinter ,不过似乎 pyqt 更流行,可能是布局方便些
  • MinQ2天前
    引用37
    @roundgis python 会用 conda-pack 打成一个压缩包。C#侧打包的时候会下载这个压缩包然后解压,再打包,我们用 CI 脚本自动处理这些事所以感觉也没有多麻烦
  • 引用38
    公司就用 pyside 吧,pyqt 需要商业授权
  • solopython2天前
    引用39
    https://www.python.org/about/apps/ 查看 Desktop GUIs
  • roundgis2天前
    引用40
    @MinQ conda-pack 是不是只能用於 anaconda 發行的 python 版本?
  • qrobot2天前
    引用41
    @BingoXuan #17 那为什么不用 Electron , 这样还可以解决不同浏览器的兼容性问题
  • MinQ2天前
    引用42
    @roundgis conda-pack 只能打包由 conda 创建的 python 环境
  • BingoXuan2天前
    引用43
    @qrobot
    electron 太大了。我的使用场景无法分发这么大软件。我写的一个 mac app 压缩后才 3.3M ,还有内部使用的 rpc 库和一大堆功能。
  • jiafeiblog2天前
    引用44
    直接 python 启个 web 服务,启用默认浏览器展示,简单实用
  • tzigone2天前
    引用45
    不如转 C# WPF or WinForm ,用 DevExpress 组件丝滑得很
  • 游客
    46
返回