放假一直在研究Barra Risk Model,本来想用Python做一个美股的implementation的,但是无奈没有数据…后来好在发现UCB有一个数据库可以提供数据支持,真是方便了许多,但是无奈进入数据库一定要去学校图书馆,而图书馆要等到一月三号才开门,这几天只好暂时把Barra Model放下做些其他的事情。
比如说看看Time Series,或者…写了一个天气预报的GUI。因为想到明年回去的时候可以写个抢课的程序来拯救世界,怎么样也要稍微懂一点GUI的知识,就用了一天时间看了看GUI编程。
Python里面GUI编程可以用自带的Tkinter,也可以用其他的库,这里我选择了PyQt来写GUI,因为对PyQt早有耳闻,在各个编程语言都有移植,里面几千条命令,虽然看不完但是需要的时候就查阅文档,比较方便
以下就是源码,也有注释。需要留心的是,其中的connect函数,它是通过信号(Signal)与槽(SLOT)来实现,即发出信号给槽,执行槽的命令。
比如说self.city_btn.clicked.connect(self.city_holder)
也可以写成self.connect(self.city_btn, QtCore.SIGNAL('clicked()'), self.city_holder)
第二种就比较好理解了吧
实现出来的效果如下:
当然我也添加了捕捉错误的代码。
当然直接复制代码应该是不能运行的,因为我在国外访问一些网站有点慢,所以我就把citycode的xml直接下载下来了,省得每次查询城市代码还要访问网络。所以要让代码能够有用的话,需要一个citylist.xml和一个web.png 一个小logo…
Anyway, Happy New Year!
Jan 1, 2016
comments powered by