Ankündigung

Einklappen
Keine Ankündigung bisher.

numerischer Wert - Textzuordnung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    numerischer Wert - Textzuordnung

    Ich erhalte einen Statuscode von meinem Indego Mähroboter, diesen möchte ich nun in einen Textwert umwandeln, um ihn z.B in der Visualisierung auszugeben. Ich könnte jetzt 23 if-Abfragen machen, finde ich aber wenig elegant, geht das auch schöner?
    Ich müsste also irgendwo eine Liste definieren, mit den Fehlermeldungen, ungefähr so [519:'stecke fest', 518:'mähe'] nun würde ich gerne den code "519" an eine Funktion übergeben und "stecke fest" als Antwort erhalten.

    #2
    Hi,
    schätze mal da ist das was du suchst

    Code:
    Fehlermeldung = {519 : "stecke fest", 518:"mähe", 517:"blabla"}
    print( Fehlermeldung[ 518 ] ) 
    gibt "mähe" aus
     [URL]http://www.python-kurs.eu/dictionaries.php[/URL]
    Viele Grüsse
    Jürgen

    Kommentar


      #3
      vielen Dank an meinen persönlichen Pythonberater ;-) !

      Kommentar


        #4
        Das hab ich nur zufälligerweise auch derletzt gebraucht...Phyton kenne ich nicht wirklich.

        Kommentar


          #5
          Hi, falls Du den Status nur für SV brauchen solltest würde ich Dir noch empfehlen Dir das maptext-Widget von Jumi anzuschauen (Link).
          Setze dieses insb. für div. Klartextstatus-Meldungen ein.

          Kommentar


            #6
            Hi, danke - ich verwurste die Meldungen und ordne jeweils zwei Parameter pro Wert zu, vielleicht braucht es ja noch mal jemand:

            PHP-Code:
            state__str = {0:['Lese Status','unknown'], 257:['lädt''dock'],258:['docked','dock'], 259:['Docked-Softwareupdate','dock'], 260:['Docked','dock'], 261:['docked','dock'], 262:['docked - lädt Karte','dock'], 263:['docked-speichert Karte''dock'],513:['mäht','moving'], 514:['bestimmt Ort','moving'], 515:['lade Karte','moving'], 516:['lerne Garten','moving'], 517:['Pause','pause'], 518:['schneide Rand','moving'], 519:['stecke fest','hilfe'], 769:['fährt in Station','moving'],  770:['fährt in Station','moving'], 771:['fährt zum Laden in Station','moving'], 772:['fährt in Station – Mähzeit beendet','moving'], 773:['fährt in Station - überhitzt','help'], 774:['fährt in Station','moving'], 775:['fährt in Station - fertig gemäht','moving'], 776:['fährt in Station - bestimmt Ort','moving'], 1025:['Diagnosemodus','unknown'], 1026:['Endoflive','hilfe'], 1281:['Softwareupdate','dock']}
            state_str state__str[state_code][0]
                         if 
            state__str[state_code][1] == 'dock':
                           
            logger.info('indego docked')
                            
            self._sh.return_item('indego.docked')(True,'indego plugin')
                            
            self._sh.return_item('indego.moving')(False,'indego plugin')
                            
            self._sh.return_item('indego.pause')(False,'indego plugin')
                            
            self._sh.return_item('indego.help')(False,'indego plugin')
                        if 
            state__str[state_code][1] == 'moving':
                            
            self._sh.return_item('indego.docked')(False,'indego plugin')
                            
            self._sh.return_item('indego.moving')(True,'indego plugin')
                            
            self._sh.return_item('indego.pause')(False,'indego plugin')
                            
            self._sh.return_item('indego.help')(False,'indego plugin')
                        if 
            state__str[state_code][1] == 'pause':
                            
            self._sh.return_item('indego.docked')(False,'indego plugin')
                            
            self._sh.return_item('indego.moving')(False,'indego plugin')
                            
            self._sh.return_item('indego.pause')(True,'indego plugin')
                            
            self._sh.return_item('indego.help')(False,'indego plugin')
                        if 
            state__str[state_code][1] == 'hilfe':
                            
            self._sh.return_item('indego.docked')(False,'indego plugin')
                            
            self._sh.return_item('indego.moving')(False,'indego plugin')
                            
            self._sh.return_item('indego.pause')(False,'indego plugin')
                            
            self._sh.return_item('indego.help')(True,'indego plugin'

            Kommentar

            Lädt...
            X