前两次,我们初步学习了Python的图形界面库Tkinter,这一次,我们来试着做一个汇率换算计算器。

还是老样子,先把上次的代码弄过来:

fromtkinterimport*

root = Tk()

root.title("汇率换算")

root.geometry("360x280")

root.mainloop()

我们把窗口的标题改为汇率换算,窗口大小改成“360x280”,我们来先写一个汇率换算的函数。

#汇率表

rate = {'CNY':1.000, 'USD':0.158, 'TWD':4.627, 'JPY':16.769, 'HKD':1.239}

def curconvert(acur, bcur, mount):

crate = rate[bcur]/rate[acur]

return ("%.2f" % (mount*crate))

接下来,我们来设计窗口:

用之前的pack是很难做到这样的布局的,所以这次,我们来用grid。

grid()使用表格的形式来布局控件,最重要的参数:

row:显示的行。

column:显示的列。

rowspan:跨行显示。

columnspan:跨列显示

我们先把那个标签和两个按钮加上:

fromtkinterimport*

#汇率表

rate = {'CNY':1.000, 'USD':0.158, 'TWD':4.627, 'JPY':16.769, 'HKD':1.239}

def curconvert(acur, bcur, mount):

crate = rate[bcur]/rate[acur]

return ("%.2f" % (mount*crate))

root = Tk()

root.title("汇率换算")

root.geometry("360x280")

label = Label(master = root, text = "汇率换算")

label.grid(row = 2, column = 0, rowspan = 2)

button1 = Button(master = root, text = "计算")

button1.grid(row = 3,column = 0)

button2 = Button(master = root, text = "退出")

button2.grid(row = 3,column = 1)

root.mainloop()

我们再来看看输入框(Entry)控件为了让变量绑定输入框,我们把汇率计算函数改写了一下:

fromtkinterimport*

root = Tk()

#汇率表

rate = {'CNY':1.000, 'USD':0.158, 'TWD':4.627, 'JPY':16.769, 'HKD':1.239}

acur = StringVar()

bcur = StringVar()

mount1 = StringVar()

mount2 = StringVar()

def curconvert():

crate = rate[bcur]/rate[acur]

return ("%.2f" % (mount*crate))

root.title("汇率换算")

root.geometry("360x280")

label = Label(master = root, text = "汇率换算")

label.grid(row = 2, column = 0, rowspan = 1)

button1 = Button(master = root, text = "计算")

button1.grid(row = 3,column = 0)

button2 = Button(master = root, text = "退出")

button2.grid(row = 3,column = 1)

entry1 = Entry(root, textvariable = mount1)

entry1.grid(row = 0, column = 0)

entry2 = Entry(root, textvariable = mount2)

entry2.grid(row = 1, column = 0)

root.mainloop()

最后是两个combobox(下拉框),为了使用这个控件,我们需要引入ttk模块:

fromtkinter.ttkimport*

我们再加上:

combobox1 = Combobox(root, textvariable = acur)

combobox1['values'] = ("CNY", "USD", "TWD", "JPY", "HKD")

combobox1.grid(row = 0, column = 1)

combobox1 = Combobox(root, textvariable = bcur)

combobox1['values'] = ("CNY", "USD", "TWD", "JPY", "HKD")

combobox1.grid(row = 1, column = 1)

好了,这样,我们的界面就完成了!

我们再给button1加上command=curconvert属性,button2加上command=exit属性,就完成了一个汇率计算器!

如果这篇文章对你有帮助,请点个赞,你的支持就是我的动力!

python汇率换算程序_Python学习笔记8——汇率计算器相关推荐

  1. python汇率换算程序_Python第六课 汇率兑换4.0

    函数的规则: 1)  函数以 def 关键词开头,后面接函数名称和圆括号 (). 2)  任何传入参数和变量必须放在()中间. 3)  函数内容以冒号起始,并且函数的代码块需要缩进. 4)return ...

  2. python __name__怎么使用_python学习笔记26(python中__name__的使用)

    在python中,每个py文件都是一个模块,也都是一个可执行文件,即包含main方法.因此,对每个py文件,可以单独运行,也可以import它给其他客户使用,这两种情况不一样. 1. 如果模块是被导入 ...

  3. python编辑器文字放大_python学习笔记000

    写在最前面 其实想学习编程很久了,以前也陆陆续续学习过一段时间的编程,但总是半途而废,经过我长达三秒钟的思考,总结出以下两个方面的原因: 1.没有学习的压力.因为我不是程序员,编程不是我吃饭的家伙,会 ...

  4. python 异步加载_Python学习笔记4——爬取异步加载数据

    一.什么是异步加载? 在之前的学习笔记中,爬取的网页是需要手动翻页的网址,但是一些网站是通过自动加载翻页的,如knewone网页.浏览knewone的官网就能发现,当下拉到网页最下端时,网站会自动加载 ...

  5. python查看方法作用_python学习笔记1,新手小白也能看得懂

    这是酸菜在风变编程上学习python时积累的学习笔记,希望能帮到同样也在学习中的小伙伴.持续更新~ 第0关 Print()函数 (1)不带引号:让计算机读懂括号里的内容,打印最终的结果 例:print ...

  6. python 坐标轴 单位刻度_Python学习笔记(matplotlib篇)--坐标轴刻度

    python学习笔记--坐标轴刻度 所用的库及环境: ide:pycharm python环境:python3.7 matplotlib:   matplotlib 1.11 numpy:  nump ...

  7. python的基本数据结构_Python学习笔记——基本数据结构

    列表list List是python的一个内置动态数组对象,它的基本使用方式如下: shoplist = ['apple', 'mango', 'carrot', 'banana'] print 'I ...

  8. python的基本数据结构_python学习笔记-基本数据结构

    Python 学习笔记-1 写在最前面,因为组内小伙伴要走,生信团队由原来的7个人,慢慢的变的只有我一个人了,需要紧急突击下python,因为有python的流程要交接维护 python 基本情况 代 ...

  9. python创建实例属性_Python学习笔记__6.5章 实例属性和类属性

    # 这是学习廖雪峰老师python教程的学习笔记 1.概览 1.1.实例绑定属性 class Student(object): def __init__(self, name): self.name ...

最新文章

  1. CMD 一条命令 执行 多条命令
  2. 2019年中国智能制造发展现状及趋势分析报告
  3. Xcode SVN配置
  4. 刚安装的python如何使用-python中RabbitMQ的使用(安装和简单教程)
  5. 吃自助餐怎么样一个顺序吃法才合算?
  6. jQuery遍历之next()、nextAll()方法使用实例
  7. 《CSS揭秘》读书笔记
  8. 21秋期末考试管理学基础10241k2
  9. Eclipse生成jar包
  10. Codeforces Round #756 (Div. 3)
  11. Oracle 非dba用户 使用 set autotrace 功能
  12. 阿里AI两项技术刷新行业纪录,为城市大脑,OR也为无人车?
  13. https提供安全的web通讯
  14. Java神鬼莫测之MyBatis多表操作延迟加载(四)
  15. Android HttpClient 与JSON解析
  16. 【人工智能】动物、植物、车型、菜品、LOGO识别示例代码
  17. java计算机毕业设计论文评审系统源码+系统+mysql数据库+lw文档
  18. 光伏运维将面临行业洗牌?
  19. Word怎么转换成PDF?Speedpdf批量免费在线转换
  20. IntelliJ IDEA 解决控制台不能显示日志

热门文章

  1. linux命令进入bios设置,linux系统肿么进入bios
  2. lol美服服务器修改密码,如何修改LOL美服密码?英雄联盟美服账号密码和邮箱修改教程...
  3. 大连计算机学校附近的逸林,逸林街附近学校
  4. Python爬取链家成都二手房源信息
  5. RMQ倍增,附赠有趣小故事一发
  6. 12.11 蜜蜂路线
  7. 细述QQ与TIM的不同之处
  8. ZCU102开发板的时钟系统
  9. 混淆矩阵与miou代码
  10. Detecting Holes in Point Set Surfaces 笔记