Anzeige:
Ergebnis 1 bis 2 von 2

Thema: if bedingung in python cgi script

  1. #1
    Registrierter Benutzer
    Registriert seit
    05.10.2001
    Beiträge
    46

    if bedingung in python cgi script

    Hallo Leute,
    ich komme mit einer einfachen if bedingung in einem python cgi script nicht klar. Im Prinzip möchte ich eine Zahl auswerten und je nach Ergebnis eine variable modifizieren.

    Mein script sieht folgendermassen aus:
    Code:
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    
    # Debug errors on browser
    #import cgitb; cgitb.enable()
    
    import sys
    import os
    from time import *
    
    # Zeitvariable definieren
    lt = localtime()
    
    # Variablen definieren
    uhrzeit = strftime("%H:%M:%S")
    
    # py_temp Textdatei oeffnen, auslesen und wieder schliessen
    file = open('py_temp.txt')
    py_temp_data = file.readlines()
    file.close()
    
    print 'Content-type: text/html\n\n'
    print '<html>'
    
    print '<style>'
    print '  p {'
    print '    color: black;'
    print '    font-size: 24px;'
    print '    font-weight: bold;'
    print '  }'
    print '  .normal {'
    print '    color: black;'
    print '  }'
    print '  .hot {'
    print '    color: red;'
    print '  }'
    print '  .cold {'
    print '    color: blue;'
    print '  }'
    print '</style>'
    
    print '<body>'
    print '<p class="normal">aktuelle Uhrzeit: ' + uhrzeit + '</p>'
    print '<hr style="color:#ceb98e ; height:2px "/>'
    
    # Fuer jede Zeile eine Ausgabe
    for line in py_temp_data:
      py_temp_data = line.split("\n")[0]
      split_py_temp = py_temp_data.split('#', 1)
      output_py_temp = split_py_temp[1]
    
    # Die Temperatur kalkulieren
      split_calc_temp = output_py_temp.split(': ', 1)
      calc_temp = split_calc_temp[1]
    
      if calc_temp >= 23.0 :
        line_color = "hot"
      elif calc_temp <= 19.0 :
        line_color = "cold"
      else:
        line_color = "normal"
        break
    
    # Ausgabe der aktuellen Temperatur
      print '<p class="' + line_color + '">  ' + output_py_temp + ' Grad</p>'
    
    print '</body></html>'
    
    sys.exit(0)
    Es geht um eine Zahl die als calc_temp gespeichert ist und je nach Ergebnis soll Variable line_color gesetzt werden. Aber irgendwie klappt das nicht. line_color ist bei mir immer 'hot' - also immer das Ergebnis der ersten if bedingugen, das ist aber nicht korrekt.

    Was mache ich nur falsch?
    Gruß hmikux aus Hessen
    Zenwalk
    CPU: AMD K7 1600+XP / 512MB DDR-RAM / NVIDIA-GF2-MX-Chip

  2. #2
    Registrierter Benutzer
    Registriert seit
    05.10.2001
    Beiträge
    46
    Falls es jemanden interessiert [GELÖST]:
    http://www.python-forum.de/viewtopic...251001#p251001
    Gruß hmikux aus Hessen
    Zenwalk
    CPU: AMD K7 1600+XP / 512MB DDR-RAM / NVIDIA-GF2-MX-Chip

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •