我正在尝试创建一个我在recv
中调用ConnectArduino
的类,但是我收到以下错误:
AttributeError: 'ConnectArduino' object has no attribute 'port'
有人可以告诉我哪里出错了吗?
class ConnectArduino:
def __init___(self, port, baudrate):
# if len(sys.argv) == 3:
print('# Using port: ' + g_port + " and baudrate" + str(g_baudrate))
self.port = serial.Serial(port=g_port, baudrate=g_baudrate)
def open(self):
self.port.open()
def close(self):
self.port.close()
def send(self, msg):
self.port.write(msg)
def recv(self):
return self.port.readline
def main():
ConnectArduino().recv()
if __name__ == "__main__":
main()
答案 0 :(得分:1)
您尝试使用两个参数定义构造函数
def __init___(self, port, baudrate):
# if len(sys.argv) == 3:'
print('# Using port: ' + g_port + " and baudrate" + str(g_baudrate))
self.port = serial.Serial(port=g_port, baudrate=g_baudrate)
所以
ConnectArduino().recv()
除非_
中有额外的__init___
,否则应该不起作用,因此事情无法正常工作。