在實驗室已重新灌window系統的電腦上安裝以及撰寫計算機程式
有上次的經驗這次安裝過程快了很多
不過實驗室的電腦所接收到的網路速度沒有破過200kB
所以安裝Qt的過程是從昨天開始
讓電腦在實驗室跑了一天
今日安裝完成後
學長有教學關於class的概念
class dog:
def __init__(self):
print("bark!")
def walk(self, x):
print("walk %d"%x)
class black_dog(dog):
def __init__(self, a):
print(a)
def black_dog_walk(self, x):
print("black dog walk %d"%x)
def walk(self, x):
super(black_dog, self).walk(x)
self.black_dog_walk(x)
BD = black_dog(10)
BD.walk(5)
以上列的狗狗與黑狗跑幾步來說明
"繼承"程式的概念
如中間段的class black_dog(dog):即是以黑色狗狗繼承一開始dog的函式
但由於blackdog底下沒有執行dog函式中列印字串的功能 故bark不會被列印出來
並簡單展示了列應字串的基礎程式
# -*- coding: utf-8 -*-
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from Ui_test import Ui_MainWindow
class MainWindow(QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent)
self.setupUi(self)
@pyqtSlot()
def on_AButton_clicked(self):
print("Hello world!")
if __name__=='__main__':
import sys
app = QApplication(sys.argv)
run = MainWindow()
run.show()
sys.exit(app.exec_())
所有程式基礎最愛用字眼"Hello World"
學長出了一個計算機的功課
不過只要求我寫出有加法的即可
但由於不熟悉
只寫出部分功能
# -*- coding: utf-8 -*-
from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from Ui_cal import Ui_MainWindow
class MainWindow(QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent)
self.setupUi(self)
self.floatMod = False
@pyqtSlot()
def on_one_clicked(self): self.add_num(1)
@pyqtSlot()
def on_seven_clicked(self): self.add_num(7)
@pyqtSlot()
def on_three_clicked(self): self.add_num(3)
@pyqtSlot()
def on_four_clicked(self): self.add_num(4)
@pyqtSlot()
def on_nine_clicked(self): self.add_num(9)
@pyqtSlot()
def on_six_clicked(self): self.add_num(6)
@pyqtSlot()
def on_five_clicked(self): self.add_num(5)
@pyqtSlot()
def on_two_clicked(self): self.add_num(2)
@pyqtSlot()
def on_eight_clicked(self): self.add_num(8)
@pyqtSlot()
def on_zero_clicked(self): self.add_num(0)
def add_num(self, x):
val = self.lcd.value()
if val==0:
self.lcd.display(x)
elif self.floatMod:
float_len = len(str(val).split('.')[-1])
self.lcd.display(val+x*10**-float_len)
else:
self.lcd.display(val*10+x)
@pyqtSlot()
def on_plus_clicked(self):
"""
Slot documentation goes here.
"""
# TODO: not implemented yet
raise NotImplementedError
@pyqtSlot()
def on_equal_clicked(self):
"""
Slot documentation goes here.
"""
# TODO: not implemented yet
raise NotImplementedError
@pyqtSlot()
def on_dot_clicked(self):
if self.floatMod==False:
self.floatMod = True
if __name__=='__main__':
import sys
app = QApplication(sys.argv)
run = MainWindow()
run.show()
sys.exit(app.exec_())
最大重要問題
小數點(del)屬Python的語言
故不能取del為名稱
程式圖樣

Comments
comments powered by Disqus