|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
两段一样的代码
第一段:
- from PyQt5 import QtCore, QtGui, QtWidgets
- import sys
- import minimalmodbus
- class WorkThread(QtCore.QThread):
- def __int__(self):
- super().__init__()
- self.instrument = minimalmodbus.Instrument('com9', 1)
- self.instrument.serial.baudrate = 9600
- self.instrument.serial.timeout = 0.1
- self.instrument.close_port_after_each_call = True
- def run(self):
- self.bit_data = self.instrument.read_registers(1, 7, 4)
- class Interface(QtWidgets.QWidget):
- def __init__(self):
- super().__init__()
- self.myThread = WorkThread()
- self.myThread.start()
- app = QtWidgets.QApplication(sys.argv)
- myWindow = Interface()
- myWindow.show()
- sys.exit(app.exec_())
复制代码
运行出错:
- Traceback (most recent call last):
- File "D:/untitled/FanWei_XiGongDa/ceshi2.py", line 12, in run
- self.bit_data = self.instrument.read_registers(1, 7, 4)
- AttributeError: 'WorkThread' object has no attribute 'instrument'
复制代码
第二段代码:
- from PyQt5 import QtCore, QtGui, QtWidgets
- import minimalmodbus
- import sys
- class WorkThread(QtCore.QThread):
- def __init__(self):
- super().__init__()
- self.instrument = minimalmodbus.Instrument('com9', 1)
- self.instrument.serial.baudrate = 9600
- self.instrument.serial.timeout = 0.1
- self.instrument.close_port_after_each_call = True
- def run(self):
- self.bit_data = self.instrument.read_registers(1, 7, 4)
- class Interface(QtWidgets.QWidget):
- def __init__(self):
- super().__init__()
- self.myThread = WorkThread()
- self.myThread.start()
- app = QtWidgets.QApplication(sys.argv)
- myWindow = Interface()
- myWindow.show()
- sys.exit(app.exec_())
复制代码
可以运行
啥原因啊
|
|