Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: Cuore 07 Listopadu 2014, 12:58:42

Název: Python if...
Přispěvatel: Cuore 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
Název: Re:Python if...
Přispěvatel: libcosenior 07 Listopadu 2014, 13:09:43
daj si pre kontrolu v programe vypísať sys.argv[1] a sys.argv[2], aj a b!
Název: Re:Python if...
Přispěvatel: jmp 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... :-)
Název: Re:Python if...
Přispěvatel: Cuore 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