Prosíme přihlašte se nebo zaregistrujte.

Přihlašte se svým uživatelským jménem a heslem.
Vaše pomoc je stále potřeba!

Autor Téma: Python if...  (Přečteno 1897 krát)

Cuore

  • Závislák
  • ***
  • Příspěvků: 2534
Python if...
« kdy: 07 Listopadu 2014, 12:58:42 »
Ahoj pánové co je špatně? Aktuální hodina je např 12
test.py 8 21
Kód: [Vybrat]
#!/usr/bin/env python

import dbus
import datetime
import sys
 
if len(sys.argv) > 1:
    print( "Script        : " + sys.argv[0] )
    print( "Podminka_1           : " + sys.argv[1] )
    print( "Podminka_2           : " + sys.argv[2] )
else:
    print(" Chybi argument ")

a = sys.argv[1]
b = sys.argv[2]
bus = dbus.SessionBus()

proxy = bus.get_object('org.gnome.SettingsDaemon',
                       '/org/gnome/SettingsDaemon/Power')
iface = dbus.\
  Interface(proxy, dbus_interface='org.gnome.SettingsDaemon.Power.Screen')

nyni = datetime.datetime.now()
print nyni.hour
if a <= nyni.hour <= b:
    print "OK..."
else:
    print "NOK..."
výsledek NOK.... nechápu
test.py 8 21
Kód: [Vybrat]
#!/usr/bin/env python

import dbus
import datetime
import sys
 
if len(sys.argv) > 1:
    print( "Script        : " + sys.argv[0] )
    print( "Podminka_1           : " + sys.argv[1] )
    print( "Podminka_2           : " + sys.argv[2] )
else:
    print(" Chybi argument ")

a = sys.argv[1]
b = sys.argv[2]
bus = dbus.SessionBus()

proxy = bus.get_object('org.gnome.SettingsDaemon',
                       '/org/gnome/SettingsDaemon/Power')
iface = dbus.\
  Interface(proxy, dbus_interface='org.gnome.SettingsDaemon.Power.Screen')

nyni = datetime.datetime.now()
print nyni.hour
if 8 <= nyni.hour <= 21:
    print "OK..."
else:
    print "NOK..."
výsledek OK, takže takhle to funguje

libcosenior

  • Návštěvník
  • Příspěvků: 76
Re:Python if...
« Odpověď #1 kdy: 07 Listopadu 2014, 13:09:43 »
daj si pre kontrolu v programe vypísať sys.argv[1] a sys.argv[2], aj a b!
Ubuntu 10.04

jmp

  • Host
Re:Python if...
« Odpověď #2 kdy: 07 Listopadu 2014, 13:17:04 »
a co tyhle?
Kód: [Vybrat]
if int(a) <= nyni.hour <= int(b):nebo
Kód: [Vybrat]
if float(a) <= nyni.hour <= float(b):
EDIT: asi bych měl upozornit, že nekrajtuji nerubínuji a pod., takže je třeba brát mé připomínky s rozvahou... :-)
« Poslední změna: 07 Listopadu 2014, 13:23:00 od jmp »

Cuore

  • Závislák
  • ***
  • Příspěvků: 2534
Re:Python if...
« Odpověď #3 kdy: 07 Listopadu 2014, 15:02:31 »
Citace
daj si pre kontrolu v programe vypísať sys.argv[1] a sys.argv[2], aj a b!
to jsem samo sebou testoval...
Stačilo označit jako integer
díky

 

Provoz zaštiťuje spolek OpenAlt.