如何用python写出到文件一个选择文件的GUI

PYthon开发_IDEL(Python GUI)的使用方法_最火下载站
您的位置: >
> PYthon开发_IDEL(Python GUI)的使用方法
PYthon开发_IDEL(Python GUI)的使用方法
我们希望能够运用python GUI来运行一些我们编写的程序,那么 GUI怎样用呢? 看完本文也许你就会使用Python GUI来编写你自己的程序了。
下面我们就来看看Python GUI是怎样使用的吧!
//= 新建一个文件
我们新建一个文件,名字随便,我这里命名为: test_hello.py
//= 用Python GUI打开文件
我们可以选择test_hello.py,右键--& Edit with IDLE(即:Python GUI) 编写如下程序:
Copy to Clipboard引用的内容:[www.veryhuo.com]
#定义一个变量 hello = &hello& #打印hello这个变量 print(hello) ############################################### test_list = [1,2,3,4,&hongten&] for i in range(1,10): test_list.append(i) print(test_list)
在Python GUI中呈现的形式如下:
//= 运行呈现
点击Run--& Run Module F5 如下图:
即可运行程序。 //= 运行效果
运行效果如下:
//= 提供debug功能
在运行程序后,有deBug选项,我们可以打开deBug功能
debug运行效果:
总结: //= 软件的整体功能不是很多,用多几遍就可以熟练使用了
上一篇: 下一篇:针对小白的Python入门教程——Python使用说明书
发表于 16:01|
作者廖雪峰
摘要:Python就为我们提供了非常完善的基础代码库,覆盖了网络、文件、GUI、数据库、文本等大量内容,被形象地称作“内置电池(batteries included)”。用Python开发,许多功能不必从零编写,直接使用现成的即可。
现在,了解了如何启动和退出Python的交互式环境,我们就可以正式开始编写Python代码了。
在写代码之前,请千万不要用“复制”-“粘贴”把代码从页面粘贴到你自己的电脑上。写程序也讲究一个感觉,你需要一个字母一个字母地把代码自己敲进去,在敲代码的过程中,初学者经常会敲错代码,所以,你需要仔细地检查、对照,才能以最快的速度掌握如何写程序。
在交互式环境的提示符&&&下,直接输入代码,按回车,就可以立刻得到代码执行结果。现在,试试输入100+200,看看计算结果是不是300:
&&& 100+200300很简单吧,任何有效的数学计算都可以算出来。
如果要让Python打印出指定的文字,可以用print语句,然后把希望打印的文字用单引号或者双引号括起来,但不能混用单引号和双引号:
&&& print 'hello, world'hello, world
这种用单引号或者双引号括起来的文本在程序中叫字符串,今后我们还会经常遇到。
最后,用exit()退出Python,我们的第一个Python程序完成!唯一的缺憾是没有保存下来,下次运行时还要再输入一遍代码。
小结:在Python交互式命令行下,可以直接输入代码,然后执行,并立刻得到结果。
使用文本编辑器
在Python的交互式命令行写程序,好处是一下就能得到结果,坏处是没法保存,下次还想运行的时候,还得再敲一遍。
所以,实际开发的时候,我们总是使用一个文本编辑器来写代码,写完了,保存为一个文件,这样,程序就可以反复运行了。
现在,我们就把上次的'hello, world'程序用文本编辑器写出来,保存下来。
所以问题又变成了:用什么文本编辑器?
推荐两款文本编辑器:一个是
,免费使用,但是不付费会弹出提示框:
,免费使用,有中文界面:
请注意,用哪个都行,但是绝对不能用Word和Windows自带的记事本。Word保存的不是纯文本文件,而记事本会自作聪明地在文件开始的地方加上几个特殊字符(UTF-8
BOM),结果会导致程序运行出现莫名其妙的错误。
安装好文本编辑器后,输入以下代码:print 'hello, world'
注意print前面不要有任何空格。然后,选择一个目录,例如C:\Workspace,把文件保存为hello.py,就可以打开命令行窗口,把当前目录切换到hello.py所在目录,就可以运行这个程序了:C:\Workspace&python hello.pyhello, world也可以保存为别的名字,比如abc.py,但是必须要以.py结尾,其他的都不行。此外,文件名只能是英文字母、数字和下划线的组合。
如果当前目录下没有hello.py这个文件,运行python hello.py就会报错:
python hello.pypython: can't open file 'hello.py': [Errno 2] No such file or directory
报错的意思就是,无法打开hello.py这个文件,因为文件不存在。这个时候,就要检查一下当前目录下是否有这个文件了。
还有同学问,能不能像.exe文件那样直接运行.py文件呢?在Windows上是不行的,但是,在Mac和Linux上是可以的,方法是在.py文件的第一行加上:#!/usr/bin/env python
然后,通过命令:&code&$ chmod a+x hello.py&/code&
就可以直接运行hello.py了,比如在Mac下运行:
小结:用文本编辑器写Python程序,然后保存为后缀为.py的文件,就可以用Python直接运行这个程序了。用Python开发程序,完全可以一边在文本编辑器里写代码,一边开一个交互式命令窗口,在写代码的过程中,把部分代码粘到命令行去验证,事半功倍!前提是得有个27'的超大显示器!
输入和输出
用print加上字符串,就可以向屏幕上输出指定的文字。比如输出'hello, world',用代码实现如下:&&& print 'hello, world'
print语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出:&&& print 'The quick brown fox', 'jumps over', 'the lazy dog'The quick brown fox jumps over the lazy dog
print会依次打印每个字符串,遇到逗号“,”会输出一个空格,因此,输出的字符串是这样拼起来的:
print也可以打印整数,或者计算结果:&&& print 300300&&& print 100 + 200300
因此,我们可以把计算100 + 200的结果打印得更漂亮一点:&&& print '100 + 200 =', 100 + 200100 + 200 = 300
注意,对于100 + 200,Python解释器自动计算出结果300,但是,'100 +
200 ='是字符串而非数学公式,Python把它视为字符串,请自行解释上述打印结果。
现在,你已经可以用print输出你想要的结果了。但是,如果要让用户从电脑输入一些字符怎么办?Python提供了一个raw_input,可以让用户输入字符串,并存放到一个变量里。比如输入用户的名字:&&& name = raw_input()Michael
当你输入name = raw_input()并按下回车后,Python交互式命令行就在等待你的输入了。这时,你可以输入任意字符,然后按回车后完成输入。
输入完成后,不会有任何提示,Python交互式命令行又回到&&&状态了。那我们刚才输入的内容到哪去了?答案是存放到name变量里了。可以直接输入name查看变量内容:&&& name'Michael'
什么是变量?请回忆初中数学所学的代数基础知识:
设正方形的边长为a,则正方形的面积为a x a。把边长a看做一个变量,我们就可以根据a的值计算正方形的面积,比如:
若a=2,则面积为a x a = 2 x 2 = 4;
若a=3.5,则面积为a x a = 3.5 x 3.5 = 12.25。
在计算机程序中,变量不仅可以为整数或浮点数,还可以是字符串,因此,name作为一个变量就是一个字符串。
要打印出name变量的内容,除了直接写name然后按回车外,还可以用print语句:&&& print nameMichael
有了输入和输出,我们就可以把上次打印'hello, world'的程序改成有点意义的程序了:name = raw_input()print 'hello,', name
运行上面的程序,第一行代码会让用户输入任意字符作为自己的名字,然后存入name变量中;第二行代码会根据用户的名字向用户说hello,比如输入Michael:C:\Workspace& python hello.pyMichaelhello, Michael
但是程序运行的时候,没有任何提示信息告诉用户:“嘿,赶紧输入你的名字”,这样显得很不友好。幸好,raw_input可以让你显示一个字符串来提示用户,于是我们把代码改成:name = raw_input('please enter your name: ')print 'hello,', name
再次运行这个程序,你会发现,程序一运行,会首先打印出please enter your name:,这样,用户就可以根据提示,输入名字后,得到hello, xxx的输出:C:\Workspace& python hello.pyplease enter your name: Michaelhello, Michael
每次运行该程序,根据用户输入的不同,输出结果也会不同。
在命令行下,输入和输出就是这么简单。
小结:任何计算机程序都是为了执行一个特定的任务,有了输入,用户才能告诉计算机程序所需的信息,有了输出,程序运行后才能告诉用户任务的结果。输入是Input,输出是Output,因此,我们把输入输出统称为Input/Output,或者简写为IO。
raw_input和print是在命令行下面最基本的输入和输出,但是,用户也可以通过其他更高级的图形界面完成输入和输出,比如,在网页上的一个文本框输入自己的名字,点击“确定”后在网页上看到输出信息。原文链接:
& & & & 责编(arron刘)
推荐阅读相关主题:
CSDN官方微信
扫描二维码,向CSDN吐槽
微信号:CSDNnews
相关热门文章用Python语言设计GUI界面 - Hanson1 - 博客园
我们大家都编写过程序,但是如果能够设计一个GUI界面,会使程序增添一个很大的亮点!今天就让我们来用目前十分流行的python语言写出一个最基本的GUI,为日后设计更加漂亮的GUI打下基础。
Python编译软件
PyQt设计软件
首先,如果没有安装python和PyQt软件的请先直接搜索下载并安装。python是一个开源软件,因此都是可以在网上免费下载的,最新版本即可。下载完成后,我们先打开PyQt designer。
打开后,首先是一个默认的新建窗口界面,在这里我们就选择默认的窗口即可。
现在是一个完全空白的窗口。第一步我们要先把所有的设计元素都拖进这个窗口。我们先拖入一个“Label”,就是一个不可编辑的标签。
随后我们再拖入一个可以编辑的“Line Edit”
最后我们拖入最后一个元素:“PushButton”按钮,也就是平时我们所点的确定。
目前我们已经把所有所需要的元素都拖入了新建的窗口。对于每一个元素,我们都可以双击进行属性值的修改,此时我们仅需要双击改个名字即可
此时我们已经完成了一半,接下来需要对动作信号进行操作。我们需要先切入编辑信号的模式
此时把鼠标移动到任意元素,都会发现其变成红色,代表其被选中。
当我们选中pushbutton后,继续拖动鼠标指向上面的line edit,会发现由pushbutton出现一个箭头指向了line edit,代表pushbutton的动作会对line edit进行操作。
随即会弹出一个配置连接窗口。左边的是pushbutton的操作,我们选择clicked(),即点击pushbutton。
右边是对line edit的操作,我们选择clear(),即清楚line edit中的内容。
最后我们点击确定。
保存完成后,我们在PyQt中的操作就已经完成了。保存的文件名我们命名为test,PyQt生成的设计文件后缀是.ui。
然后我们需要把.ui文件转换成可编译的.py文件,我们需要用到PyQt提供的pyuic4命令来完成转换。这是一个DOS命令,因此我们需要调出DOS操作界面。打开开始菜单,找到附件中的运行。
在运行中输入cmd,确定后即可打开DOS界面。
在DOS界面下,我们需要定位到刚才保存的.ui文件的位置,如果是默认的话,会保存在C:\Python27\Lib\site-packages\PyQt4,定位的过程如图所示。转换成.py文件的命令是:pyuic4 test.ui -o test.py
转换命令执行后,会生成一个test.py的文件,如图所示
最后我们需要对生成的python文件加入头文件和主函数,就可以生成一个完整的GUI程序了!首先是在整个程序的最开头加入import sys,如图所示。
另外,在程序的末尾,加入如图所示的主函数代码。主函数会调用我们再PyQt里已经完成的生成元素的函数以及配置连接函数,因此我们只需要加上主函数来调用他们即可。
保存后,双击我们编辑完成的python文件,就会弹出我们刚才设计的GUI界面啦!这就是我们所完成的第一个用python语言写的GUI程序啦!
PyQt设计完成的文件最好保存在默认路径下,这个路径下才可以执行pyuic4转换命令,否则可能DOS系统下无法识别pyuic4这个命令。
阅读(...) 评论()&nbsp>&nbsp
&nbsp>&nbsp
&nbsp>&nbsp
Python自带的Tkinter写GUI小程序
摘要:学了一点点python基础语法,就斗胆用它加上一些文件读写的module,写了几个文件处理的程序;但是需求又说:写个简单的GUI吧,用起来方便。目标:GUI实现点击选择文件按钮弹出windows的文件管理器,选取所需要的文件/文件夹将上述的路径显示出来点击运行按钮,运行文件处理程序效果图工具:选择了python自带的tkinter参考资料:http://www.tutorialspoint.com/python/python_gui_programming.htm简直是最全面
学了一点点python基础语法,就斗胆用它加上一些文件读写的module,写了几个文件处理的程序;但是需求又说:写个简单的GUI吧,用起来方便。
目标:GUI实现
点击选择文件按钮弹出windows的文件管理器,选取所需要的文件/文件夹
将上述的路径显示出来
点击运行按钮,运行文件处理程序
工具:选择了python自带的tkinter
参考资料:http://www.tutorialspoint.com/python/python_gui_programming.htm简直是最全面的资料!
简单介绍一下最关键的部分:首先要有一个基本的框架,我们在这个框架里面添加其他的框架:root = Tk() #base window这个root就是主框架名
然后我们计划一下,程序有哪几个部分,因为要设计布局,而tkinter非常简单,只能定义上下左右4个方向;我们定义两个主要的部分,左边和右边:
buttonfrm = Frame(root) #'button frame' is in Root window
buttonfrm.pack()
textframe = Frame(root) #text frame in Root window
textframe.pack(side=LEFT)
textframe 和 buttonframe 是两个副框架名
然后我们在里面去定义组件。
因为上面那个连接是最全面的,我就不多说了,尽量参考原文档。
B = Tkinter.Button(top, text =&Hello&, command = function)
可实时更新哦(用下面的set函数)
var = StringVar()
label = Label( root, textvariable=var, relief=RAISED )
var.set(&Hey!? How are you doing?&)
label.pack()
import Tkinter
import tkMessageBox
top = Tkinter.Tk()
def helloCallBack():
tkMessageBox.showinfo( &Hello Python&, &Hello World&)
B = Tkinter.Button(top, text =&Hello&, command = helloCallBack)
top.mainloop()
python 代码:
import tkinter
from tkinter import *
def func1():
s='fucked!'
outputtext.set(s)
root = Tk() #base window
buttonfrm = Frame(root) #'button frame' is in Root window
buttonfrm.pack()
textframe = Frame(root) #text frame in Root window
textframe.pack(side=LEFT)
btnfrm=Frame(root)
btnfrm.pack(side=BOTTOM)
inputbutton = Button(buttonfrm, text=&Input&,command=func1) #command = helloCallBack
inputbutton.pack()
outputbutton = Button(buttonfrm, text=&Output&)
outputbutton.pack()
inputtext=StringVar()
inputmsg=Label(textframe,textvariable=inputtext, relief=RAISED)
inputtext.set(s)
inputmsg.pack()
s='changed!'
outputtext=StringVar()
outputmsg=Label(textframe,textvariable=outputtext, relief=RAISED)
outputtext.set(s)
outputmsg.pack()
#run &; exit button
runbutton = Button(btnfrm, text=&RUN!&,fg='red')
runbutton.pack()
exitbutton = Button(btnfrm, text=&EXIT!&,command=root.quit)
exitbutton.pack()
root.mainloop()
以上是的内容,更多
的内容,请您使用右上方搜索功能获取相关信息。
若你要投稿、删除文章请联系邮箱:zixun-group@service.aliyun.com,工作人员会在五个工作日内给你回复。
云服务器 ECS
可弹性伸缩、安全稳定、简单易用
&40.8元/月起
预测未发生的攻击
&24元/月起
为您提供0门槛上云实践机会
你可能还喜欢
你可能感兴趣
阿里云教程中心为您免费提供
Python自带的Tkinter写GUI小程序相关信息,包括
的信息,所有Python自带的Tkinter写GUI小程序相关内容均不代表阿里云的意见!投稿删除文章请联系邮箱:zixun-group@service.aliyun.com,工作人员会在五个工作日内答复
售前咨询热线
支持与服务
资源和社区
关注阿里云
International使用PyQt来编写第一个Python GUI程序 - Python - 伯乐在线
& 使用PyQt来编写第一个Python GUI程序
许多人在学习如何创建一个 GUI 应用的时候都感到十分的困难。其中最重要的原因是,他们不知道应该从何下手。大多数的教程都只有文字,但事实上仅仅依靠文字很难学会 GUI 编程,因为 GUI 应用大多数都是基于视觉上的。
我们将通过创建一个简单的 GUI 应用来避免上面提到的这些问题,并且向你展示着手开始这件事其实是多么的简单。一旦你明白了这些基本的知识,以后的进一步学习将会变得十分的容易。
这就是我们即将完成的东西:
这是一个简单的 GUI 应用,根据输入的价格(price)和税率(tax rate),计算出最终的价格(final price)。
大多数的教程都试图直接通过代码来对 GUI 应用进行布局,但是这样做实在是很费劲。我们将要做的是利用优秀的 QT Designer 工具来对我们的应用进行布局。
所以不要再劳神费力的用代码来设计界面了。现在开始所有的东西都将通过图形界面来搞定。
如果你已经并且安装了 ,你应该已经安装好了 PyQt4。如果没有的话,你需要从先下载它。
同时你还需要一个 Qt Designer。我建议你整个的 QT 套件,因为其中还包含了许多其他有用的工具。
提示:当你需要查看更多细节的时候,你可以通过点击下方的任意图片来查看其原图。(译者注:你可能需要查看原始链接来查看原图)
打开 QT Designer。在弹出的窗口中,选择 Main Window,这样它会给你一个空白的画板。
接下来在左侧选择Text Edit:
将Text Edit 拖动到主窗口:
看见右边我粗略的用红圈框起来的部分了吗?那就是定义这个对象的名字的地方。这个名字将是我们通过 Python 代码调用到这个对象的变量名,所以请尽量取一个有意义的名称。
我将它取名为price_box,因为我们会在这里输入价格。然后我们需要给这个输入框添加一个 label,以便让用户更加清楚这个输入框的作用。
我在上图中圈出了 label。把它拖动到主窗口当中来。
现在它被默认称作TextLabel。双击并将其命名为Price。你还可以将这段文字字体加大并且设置为粗体,就像下边看到的这样:
对于税率(tax)输入框,我们会使用另外的一个东西。找到spin box:
左侧用圈框起来的部分就是一个spin box。它会限定你能输入的值。其实并不是非得要用spin box,这样做只不过是为了更好地展示 QT Creator 所能提供的各种不同的组件。将spin box 拖到窗口中。然后我们要做的第一件事情就是将objectName 改为一个有意义的名字,例如我将其设置为tax_rate。请记住这将会是你在 Python 代码中调用它的时候会使用到的变量名。
我们可以为我们的spin box 设置一个默认值。我选择将其设置为 20:
如果你仔细观察上图,你会发现我们也可以设置它的最小值和最大值。不过我并不打算去更改他们。
同样地,我会为它添加一个标签叫做Tax Rate。然后看看我们接下来会用到的圈起来的Push Button:
好的,现在选择Push Button 然后将其拖动到我们的窗口中来。
这个按钮现在显示的是PushButton,这并不是一个很有意义的名字。到了这一步,你应该知道该怎么更改它了。不过在此之前,我们要把这个按钮的名字(不是显示用的文字列)改为calc_tax_button。
然后,我们可以修改真正的显示文字列了:
然后选择另外一个Text Edit 并将其拖动到窗口中。你不需要给它添加标签,因为我们会把我们的结果输出到这里。把它的名字改为results_window(下图中没有画出来,但你应该已经知道该如何操作了)。
如果你觉得需要的话,你可以添加一个大标题。这是一个简单的label box 并且将字体加大了。
现在保存你的成果:
这个文件在下一部分我们编写代码的时候将会用到,所以最好把它存在一个我们方便访问的地方。
我们创建的只是一个简单的 XML 文件。用任意一个文本编辑器打开它,你可以看到这样的内容:
Qt 代码是面向对象的,并且简单易学。所有我们添加的组件都是一个对象,并且都拥有自己的方法比如toPlainText()(用来读取输入框中的值)。这让它使用起来非常方便。
在你编写代码之前,你必须要使用一些函数来进行配置。我确信官方的文档中肯定有提到过这个,但是我现在打死也找不到这些文档了,所以我只能通过官方的例程(以及网上的一些教程)中总结出了这一小段代码来进行配置。我已经把这些函数上传到了 。
这些代码非常有用,每当你想要创建一个新的 PyQt 项目的时候,就在这段代码的基础上添加你自己的代码吧。
这段代码如下:
import sys
from PyQt4 import QtCore, QtGui, uic
qtCreatorFile = "" # Enter file here.
Ui_MainWindow, QtBaseClass = uic.loadUiType(qtCreatorFile)
class MyApp(QtGui.QMainWindow, Ui_MainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
Ui_MainWindow.__init__(self)
self.setupUi(self)
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
window = MyApp()
window.show()
sys.exit(app.exec_())
123456789101112131415161718
import sysfrom PyQt4 import QtCore, QtGui, uic&qtCreatorFile = "" # Enter file here.&Ui_MainWindow, QtBaseClass = uic.loadUiType(qtCreatorFile)&class MyApp(QtGui.QMainWindow, Ui_MainWindow):&&&&def __init__(self):&&&&&&&&QtGui.QMainWindow.__init__(self)&&&&&&&&Ui_MainWindow.__init__(self)&&&&&&&&self.setupUi(self)&if __name__ == "__main__":&&&&app = QtGui.QApplication(sys.argv)&&&&window = MyApp()&&&&window.show()&&&&sys.exit(app.exec_())
其中需要注意的是第三行:
qtCreatorFile = "" # Enter file here.
qtCreatorFile = "" # Enter file here.
你需要在这里填入你先前创建的文件的地址。这个文件将会被内置的函数载入:
Ui_MainWindow, QtBaseClass = uic.loadUiType(qtCreatorFile)
Ui_MainWindow, QtBaseClass = uic.loadUiType(qtCreatorFile)
让我们大致地看一看这段代码:
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
window = MyApp()
window.show()
sys.exit(app.exec_())
if __name__ == "__main__":&&&&app = QtGui.QApplication(sys.argv)&&&&window = MyApp()&&&&window.show()&&&&sys.exit(app.exec_())
这段主程序创建了一个新的 Qt Gui 应用。,每个 QT 应用都可以通过命令行进行配置,所以必须传入sys.argv 参数。不过现在我们用不到这个。最后,我们创建了一个MyApp 类,这个类继承于 Qt 库并且调用了父类的初始化函数:
class MyApp(QtGui.QMainWindow, Ui_MainWindow):
def __init__(self):
QtGui.QMainWindow.__init__(self)
Ui_MainWindow.__init__(self)
self.setupUi(self)
class MyApp(QtGui.QMainWindow, Ui_MainWindow):&&&&def __init__(self):&&&&&&&&QtGui.QMainWindow.__init__(self)&&&&&&&&Ui_MainWindow.__init__(self)&&&&&&&&self.setupUi(self)
你不一定非得要了解这些代码的细节。你只需要在它的基础上继续开发就好了。
下载pyqt_skeleton.py 这个文件,并将它重命名为pyqt_first.py。这是因为我们不想去改动到源文件。然后要做的第一件事就是在代码中导入我们自己的 XML 文件,这个 XML 文件包含了我们的这个 GUI 信息。将下面的这一行:
qtCreatorFile = "" # Enter file here.
qtCreatorFile = "" # Enter file here.
qtCreatorFile =
"tax_calc.ui"
qtCreatorFile =&&"tax_calc.ui"
这样就能把我们的 GUI 文件载入到内存中。现在,我们的 GUI 中最关键的组件就是我们的这个按钮了。一旦我们按下这个按钮,就会发生一些神奇的事情。到底会发生什么?这就需要我们告诉代码当按下Calculate Tax 按钮的时候该怎么做了。在__init__ 函数中,添加如下的内容:
self.calc_tax_button.clicked.connect(self.CalculateTax)
self.calc_tax_button.clicked.connect(self.CalculateTax)
这段代码有什么用?还记得我们把按钮命名为了calc_tax_button 吗?(这是这个按钮对象的名字,不是按钮上显示的提示字符串。)clicked 是一个内置的函数,当有按钮被点击的时候它会被自动调用(很神奇吧)。所有的 QT 组件都有特定的函数,你可以通过 Google 来查看详细。这段代码的最后部分是connect(self.CalculateTax)。这意味着这个按钮会被链接到一个叫做self.CalculateTax 的函数,这样以后每当用户按下这个按钮的时候,这段代码都会被调用。
我们还没有实现这个函数。所以让我们动手开始写吧。
在MyApp 类中,添加另外一个函数。我们需要先看看整个函数,然后再去了解它的细节:
def CalculateTax(self):
price = int(self.price_box.toPlainText())
tax = (self.tax_rate.value())
total_price = price
+ ((tax / 100) * price)
total_price_string = "The total price with tax is: " + str(total_price)
self.results_window.setText(total_price_string)
def CalculateTax(self):&&&&&&&&price = int(self.price_box.toPlainText())&&&&&&&&tax = (self.tax_rate.value())&&&&&&&&total_price = price&&+ ((tax / 100) * price)&&&&&&&&total_price_string = "The total price with tax is: " + str(total_price)&&&&&&&&self.results_window.setText(total_price_string)
好了,让我们一行一行的分析上面的代码。
我们现在要做两件事:读取价格和税率,然后计算最终的价格。好了开始吧。请记住,我们要通过我们设定的名字来调用这些组件(这就是我让你不要用默认的通用名称比如box1 的原因,否则的话我们在写代码的时候会很恼火)。
price = int(self.price_box.toPlainText())
price = int(self.price_box.toPlainText())
price_box.toPlainText() 是一个内置的可以读取输入框中的值的函数。顺便提一句,虽然你用得多了以后肯定能记住这些函数,因为他们的名字取得很规范,但是你没必要一开始就去记忆所有这些函数。我每次都是通过 Google 诸如 “Qt Textbox 读取数据”一类的关键字来找到我所需要的函数。
通过函数读取到的是一个 string 类型的值,所以我们需要把他转换成 integer 类型并存在一个price 变量中。
然后读取税率:
tax = (self.tax_rate.value())
tax = (self.tax_rate.value())
同样的,value() 是读取spinbox 中值的函数。感谢 Google。
我们现在已经得到了以上两个值,这样我们就能用非常高大上的数学公式来计算我们的最终价格了:
total_price = price
+ ((tax / 100) * price)
total_price_string = "The total price with tax is: " + str(total_price)
total_price = price&&+ ((tax / 100) * price)total_price_string = "The total price with tax is: " + str(total_price)
我们新建了一个 string 变量来储存我们的最终价格。因为最终直接显示在应用上的将会是一个 string 类型的值:
self.results_window.setText(total_price_string)
self.results_window.setText(total_price_string)
在results_window 中,我们调用了setText() 函数,它能显示我们计算出的最终价格的字符串。
最后运行我们写好的程序:
python pyqt_first.py
python pyqt_first.py
好了,这就是一个简单的 PyQt 教程。
如果你还想要体验更多好玩儿的东西,你可以试着用一用别的组件,不过先提醒一句,你要是放了太多的组件在你的应用中的话,用起来可能会有点费劲…
关于作者:
可能感兴趣的话题
为什么我运行后找不到calc_tax_button
加了这句:self.calc_tax_button.clicked.connect(window.CalculateTax)
AttributeError: 'MyApp' object has no attribute 'calc_tax_button'
但是没有添加click事件可以运行
关于 Python 频道
Python频道分享 Python 开发技术、相关的行业动态。
新浪微博:
推荐微信号
(加好友请注明来意)
– 好的话题、有启发的回复、值得信赖的圈子
– 分享和发现有价值的内容与观点
– 为IT单身男女服务的征婚传播平台
– 优秀的工具资源导航
– 翻译传播优秀的外文文章
– 国内外的精选文章
– UI,网页,交互和用户体验
– 专注iOS技术分享
– 专注Android技术分享
– JavaScript, HTML5, CSS
– 专注Java技术分享
– 专注Python技术分享
& 2018 伯乐在线

我要回帖

更多关于 python写出到文件 的文章

 

随机推荐