- 主题:python QT开发GUI能做产品不?
以前可能会担心 pyqt 源码很容易被反汇编。现在有了 nuitka 会好很多。或者我们用 cython 编译 .py 成 .dll,只是会生成很多 dll, 但成熟稳定。
pyqt 和 qt 几乎是一行行对照翻译。如果想提高生产力,你可能会失望。不过可以利用上 python 的优秀社区,如果你的核心功能是网络、科学计算、系统管理,用 python 都很不错。
劣势是 python 本身比较慢,所以如果你的程序里面有很多计算需要用上其它语言优化。
有人觉得 pyqt 编译出来的 exe 比较大,但我觉得 50M 大小的安装包放在如今 2021 年简直可以称得上精致。
PC 桌面软件编程已经是过去式。不是说技术不行,而是推广方式非常难。用户没法打开浏览器就试用你的软件,也会担心你的软件在他的电脑里七搞八搞。所以搞 PC 软件一定要想清楚。
【 在 bom (bom) 的大作中提到: 】
: 现在有个项目要求用QT,我在考虑是不是用python做。
: 有人有这方面经验么?
--
修改:hgoldfish FROM 124.72.118.*
FROM 124.72.118.*
pyqt 最好不要用 qthread. 因为 qthread 在某些情况下会被不小心析构,然后崩溃掉。用 python 的 threading 模块比较好。
vb6 当年联网不好使,除了做点单机数据库,没什么大用。真是遥远的回忆啊。
【 在 laserwin355 (laserwin355) 的大作中提到: 】
: 这两个刚好我都很熟,做很简单的界面差不多。但玩的略微复杂一点点的话,其实pyqt还是比vb6复杂很多的,比如Qthread多线程、各种类的继承、框架布局QSS等等,这些东西都是vb不具备的。
: 发自「今日水木 on LYA-AL00」
--
FROM 110.81.14.*
class MyWindow(...):
def startNewThread(self):
self.thread = QThread()
....
self.thread.start()
以上代码看起来没问题吧。但假设这个方法被某个按钮触发,并且很快地触发多次。第二次执行的时候,会导致 self.thread 被重新赋值。旧的 self.thread 被析构,如果碰巧还在运行中,就会触发崩溃。
【 在 bhfwg (bhfwg) 的大作中提到: 】
: "qthread 在某些情况下会被不小心析构"
: 大佬,这个能举些例子吗?
--
修改:hgoldfish FROM 110.81.14.*
FROM 110.81.14.*