Ich habe ein Problem beim Zugriff auf client.close() in readholdingregisters() von Closeconnection() in dem folgenden Code:Zugriffsmethode Variable aus anderen Methode Python
class EnergyMeter:
def __init__(self, model, gatewayipaddress, port ,deviceid):
self.model = model
self.gatewayipaddress = gatewayipaddress
self.port = port
self.deviceid = deviceid
def readholdingregisters(self, startingregister, numberofregisters):
from pymodbus3.client.sync import ModbusTcpClient as ModbusClient
client = ModbusClient(self.gatewayipaddress, port=self.port)
client.connect()
if #some code here:
#some other code here
return concatResult
else:
return otherResult
Hier habe ich die Verbindung client.connect schließen möchten() aus readholdingRegisters():
def closeconnection(self):
EnergyMeter.readholdingregisters().client.close()??????????????????
Können Sie mir bitte eine gute Lösung, wie es geht?
Speichern Sie die Verbindung auf der Instanz genau wie Sie mit Ihren anderen Daten ... – kindall
Ich bin mir nicht sicher, ob ich verstehe, was Sie meinen. Kannst du ein kleines Beispiel schreiben? – KaloyanGeorgiev
'self.client = client' – kindall