Zeitlicher Aufruf von Methode mit Rückgabewerten

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
amaniac1979
User
Beiträge: 1
Registriert: Montag 10. Mai 2021, 15:42

Hallo Zusammen,

für eine Wetteranzeige möchte ich eine Methode zeitlich gesteuert aufrufen.
Die Visualisierung erfolgt über Kivy, die Methode ist in einer separaten .py Datei geschrieben.

Der Aufruf erfolgt in der folgenden Klasse:

Code: Alles auswählen

class Screen_Weather(Screen):
    actTemperature = StringProperty()
    actHumidity = StringProperty()
    sunrise = StringProperty()
    sunset = StringProperty()
    winddirection = StringProperty()
    windspeed = StringProperty()
    weatherImage = StringProperty()
    feelTemperature = StringProperty()
    observationTime = StringProperty()

    #ausgabe = WeatherData()
    #actTemperature, actHumidity, feelTemperature, sunrise, sunset, winddirection, windspeed, weatherImage, observationTime = ausgabe.readWeatherData()

    def updateWeather(self):
        ausgabe = WeatherData()
        self.actTemperature, self.actHumidity, self.feelTemperature, self.sunrise, self.sunset, self.winddirection, self.windspeed, self.weatherImage, self.observationTime = ausgabe.readWeatherData()
        
    Clock.schedule_interval(updateWeather, 5)
    
Das Problem ist folgendes:
Wird die Funktion zum Auslesen der Wetterdaten über die folgenden Zeilen ausgeführt, dann funktioniert die Anzeige ohne Probleme.

Code: Alles auswählen

	ausgabe = WeatherData()
    	actTemperature, actHumidity, feelTemperature, sunrise, sunset, winddirection, windspeed, weatherImage, observationTime = ausgabe.readWeatherData()
Rufe ich die Funktion allerdings über die folgenden Zeilen auf, dann bekomme ich die Fehlermeldung: ValueError: unconverted data remains: AM

Code: Alles auswählen

def updateWeather(self):
        ausgabe = WeatherData()
        self.actTemperature, self.actHumidity, self.feelTemperature, self.sunrise, self.sunset, self.winddirection, self.windspeed, self.weatherImage, self.observationTime = ausgabe.readWeatherData()
        
Clock.schedule_interval(updateWeather, 5)
Da der Aufruf ohne Scheduling funktioniert, vermute ich den Fehler nicht in der Methode und der "unconverted data", sondern eher beim Aufruf und der Übergabe der Rückgabewerte.

vielen Dank und viele Grüße
amaniac1979
Antworten