课后作业-团队编程项目进度 (科学计算器)
Posted 起凡
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了课后作业-团队编程项目进度 (科学计算器)相关的知识,希望对你有一定的参考价值。
1. Python代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
#!/usr/bin/env python # -*- coding: utf-8 -*- \'\'\' Author : Mr.LiuYC Created on 2014-09-30 E-Mail : liuyanchen0725@gmail.com Introduction: 简易计算器 实现图形界面PyQt,输入框,+,—,*,/ ;乘方 ,开方 ,取余,清零。 \'\'\' from PyQt4 import QtGui,QtCore import sys , math , string class Example(QtGui.QWidget): def __init__( self ,parent = None ): QtGui.QWidget.__init__( self ,parent = parent) self .initUI() self .last = [] def initUI( self ): list = [ \'%\' , \'**\' , \'sqrt\' , \'C\' , 7 , 8 , 9 , \'+\' , 4 , 5 , 6 , \'-\' , 1 , 2 , 3 , \'*\' , 0 , \'.\' , \'=\' , \'/\' ] length = len ( list ) for i in xrange (length): self .button = QtGui.QPushButton( str ( list [i]), self ) self .button.clicked.connect( self .onButtonClick) x = i % 4 y = i / 4 self .button.move(x * 40 + 10 ,y * 40 + 90 ) self .button.resize( 30 , 30 ) self .lineEdit = QtGui.QLineEdit(\'\', self ) self .lineEdit.move( 10 , 10 ) self .lineEdit.resize( 150 , 70 ) self .setGeometry( 200 , 200 , 170 , 300 ) self .setWindowTitle( \'Quit buttom\' ) self .show() def onButtonClick( self ): t = self .lineEdit.text() new = self .sender().text() self .last.append(new) print self .last self .lineEdit.setText(t + new) if new = = \'=\' : result = eval ( str (t)) self .lineEdit.setText( str (result)) if new = = \'C\' : self .lineEdit.setText(\'\') if new = = \'sqrt\' : self .lineEdit.setText(\'\') result = math.sqrt(string.atof(t)) self .lineEdit.setText( str (result)) if __name__ = = \'__main__\' : app = QtGui.QApplication(sys.argv) e = Example() sys.exit(app.exec_()) |
2. calculator.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
#!/usr/bin/env python # -*- coding: utf-8 -*- \'\'\' Author : Mr.LiuYC Created on 2014-09-30 E-Mail : liuyanchen0725@gmail.com Introduction: 简易计算器 实现图形界面PyQt,输入框,+,—,*,/ ;乘方 ,开方 ,取余,清零。 \'\'\' from PyQt4 import QtGui,QtCore import sys , math , string class Example(QtGui.QWidget): def __init__( self ,parent = None ): QtGui.QWidget.__init__( self ,parent = parent) self .initUI() self .last = [] def initUI( self ): list = [ \'%\' , \'**\' , \'sqrt\' , \'C\' , 7 , 8 , 9 , \'+\' , 4 , 5 , 6 , \'-\' , 1 , 2 , 3 , \'*\' , 0 , \'.\' , \'=\' , \'/\' ] length = len ( list ) for i in xrange (length): self .button = QtGui.QPushButton( str ( list [i]), self ) self .button.clicked.connect( self .onButtonClick) x = i % 4 y = i / 4 self .button.move(x * 40 + 10 ,y * 40 + 90 ) self .button.resize( 30 , 30 ) self .lineEdit = QtGui.QLineEdit(\'\', self ) self .lineEdit.move( 10 , 10 ) self .lineEdit.resize( 150 , 70 ) self .setGeometry( 200 , 200 , 170 , 300 ) self .setWindowTitle( \'Quit buttom\' ) self .show() def onButtonClick( self ): t = self .lineEdit.text() new = self .sender().text() self .last.append(new) print self .last self .lineEdit.setText(t + new) if new = = \'=\' : result = eval ( str (t)) self .lineEdit.setText( str (result)) if new = = \'C\' : self .lineEdit.setText(\'\') if new = = \'sqrt\' : self .lineEdit.setText(\'\') result = math.sqrt(string.atof(t)) self .lineEdit.setText( str (result)) if __name__ = = \'__main__\' : app = QtGui.QApplication(sys.argv) e = Example() sys.exit(app.exec_()) |
3. 运行效果图如下:
以上是关于课后作业-团队编程项目进度 (科学计算器)的主要内容,如果未能解决你的问题,请参考以下文章