PyQt5学习教程17:70行的货币转换程序的编程思路

来源:互联网 发布:it专业 编辑:程序博客网 时间:2024/05/22 14:41

这篇教程的分量比较重,而且难度比较大,如果感觉读起来有困难,可以先放一放。本例程来源于《Python Qt GUI快速编程》,该书中第4章的“70行的货币转换程序”,但是这个程序使用Python2和PyQt4编写的,我们现在使用Python3和PyQt5,所以该程序不能直接运行,而且书中所指的网站链接已经不存在,本例程在其基础上做了大幅度的改进与完善,代码量也不止70行。


先看一下,程序运行的界面,如下图所示:第1行显示能够得到的最新汇率时间,第2行是可选择的转换货币,第3行是加元对该货币的汇率(本想直接找到人民币的汇率文件,但是还没有在网上搜索到,以后找到再改进,现在只能用加元做一下中间转换),第4行是加元对人民币的汇率,第5行是计算出来的人民币对该货币的汇率,第6行是欲转换的人民币数量,第7行是转换后货币的数量,第8行用于显示原始的数据和中间过程。


数据文件是从网上搜索到的,网址为:

"http://www.bankofcanada.ca/valet/observations/FXCADAUD,FXCADBRL,FXCADCNY,FXCADEUR,FXCADHKD,FXCADINR,FXCADIDR,FXCADJPY,FXCADMYR,FXCADMXN,FXCADNZD,FXCADNOK,FXCADPEN,FXCADRUB,FXCADSAR,FXCADSGD,FXCADZAR,FXCADKRW,FXCADSEK,FXCADCHF,FXCADTWD,FXCADTHB,FXCADTRY,FXCADGBP,FXCADUSD,FXCADVND/csv"

将其下载到本地后,我们可以通过Excel可视化的观察该数据。

该数据主要分为2部分,第1部分,是转换货币的标识缩写和描述,如下图所示。


第2部分是汇率信息,我们需要通过列号进行查找。


程序的整体思路是先根据第1部分的信息建立2个字典,第1个字典存储货币字典,第2个字典存储货币描述。然后先读取第2部分内容的第1行,将其转换为列表,列表的索引号即为列号。接下来,再建立1个字典,按行处理后续的数据,如果该行有数据则覆盖已经得到的字典中的数据,否则不执行,这样就能够得到最新的汇率信息了。

由于程序量比较大,我们在下1篇教程中,再和大家探讨程序的内容和具体的解释。


原创性文章,转载请注明出处 http://user.qzone.qq.com/2756567163     
CSDN:http://blog.csdn.net/qingwufeiyang12346


阅读全文
1 0