This topic created in 5026 days ago, the information mentioned may be changed or developed.
def main():
app=QtGui.QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
if __name__=='__main__':
main()
最近在看教程学pyqt4的gui编程
想知道每段程序最后面这段代码的意思
如果这里有java大神最好能用java来做个类比。
6 replies • 1970-01-01 08:00:00 +08:00
 |
|
1
ayanamist Aug 6, 2012
Python和Java不同。Java有统一的调用接口main函数,所以声明main函数后会自动得到执行。而Python脚本里的所有代码都会立刻得到执行,哪怕是在被import时也一样,所以要限定一下,让某些代码只能直接执行时运行。最后两行就是干这个的。
|
 |
|
2
guoquan Aug 7, 2012
python都得当成脚本来看,就是一行一行执行,main函数也不会天生被调用。
第一行定义一个函数叫main,他做下面三行的事情。 这个时候这三行被定义在函数里但还没调用。 接下来这句就很典型了 如果这个py是被直接执行的主程序,__name__这个内部变量会置为__main__,如果是被import的话,会置为其他的。所以这句话是说如果当前被当作主程序调用的话,就执行刚刚定义的main函数。
|
 |
|
3
simapeng Aug 7, 2012
app=QtGui.QApplication(sys.argv)是定义一个QApplication,每个程序都必须有这个对象,app.exec_()是启动消息分发机制,类似于winmain里的消息分发机制。QT里每个widget都可以直接show,测试起来较为方便。
|
 |
|
4
wecing Aug 7, 2012
lz问的问题跟pyqt没关系……
|
 |
|
6
hanf Aug 8, 2012
python 是脚本,脚本是从头到尾执行的(如果可以执行的话) java 不是脚本,有标准入口
|