Klassen aufruf
Verfasst: Montag 1. Februar 2021, 12:22
Hallo zusammen,
Ich habe ein Problem bei einer selber erstellten Klasse.
Wenn ich jetzt diese Klasse im Interpreter aufrufen möchte geb ich ein:
>>>from sonden_class import sonden
>>>sonden.setid("123")
Dann bekomme ich den Fehler:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: setid() missing 1 required positional argument: 'id'
Kann mir jemand sagen wo hier mein Denkfehler ist?
Ich habe ein Problem bei einer selber erstellten Klasse.
Code: Alles auswählen
sonden_class.py
class sonden:
import mysql.connector
sondenid = ""
lat = ""
lon = ""
hoehe = ""
server = ""
vgeschw = ""
freq = ""
richtung = ""
geschw = ""
mydb = mysql.connector.connect(
host="localhost",
user="*************",
password="***********",
database="**********",
)
mycursor = mydb.cursor()
def setid(self, id):
sonden.sondenid = id
mycursor.execute("SELECT sondenid, lat, lon, hoehe, server, vgeschw, freq, richtung, geschw FROM sonden WHERE sondenid LIKE %s",(sonden.sondenid))
sonden = mycursor.fetchall()
sondendaten = sonden[0]
sonden.sondenid = sondendaten[0]
sonden.lat = sondendaten[1]
sonden.lon = sondendaten[2]
sonden.hoehe = sondendaten[3]
sonden.server = sondendaten[4]
sonden.vgeschw = sondendaten[5]
sonden.freq = sondendaten[6]
sonden.richtung = sondendaten[7]
sonden.geschw = sondendaten[8]
print(sonden)
>>>from sonden_class import sonden
>>>sonden.setid("123")
Dann bekomme ich den Fehler:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: setid() missing 1 required positional argument: 'id'
Kann mir jemand sagen wo hier mein Denkfehler ist?