Questo sito utilizza cookie per le proprie funzionalità e per inviarti pubblicità e servizi in linea con le tue preferenze. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsenti all’uso dei cookie.

Accedendo al link http://www.odoo-italia.org/index.php/home/cookie-policy puoi leggere in dettaglio le modalità di trattamento dei cookie da parte dell'Associazione Odoo Italia.

Benvenuto, Ospite
Nome utente: Password: Ricordami

ARGOMENTO: Strano comportamento con time.localtime()

Strano comportamento con time.localtime() 5 Anni 8 Mesi fa #12147

  • mmsyn
  • Avatar di mmsyn
  • Offline
  • Fresh Boarder
  • Messaggi: 5
  • Karma: 0
Salve a tutti,
non riesco a comprendere uno strano comportamento del python, che da riga di comando funziona correttamente, mentre andando in debug con Eclipse si comporta in modo strano.

Ambiente LinuxMint 14, fuso orario Roma, tutto correttamente impostato.

Se nell'interprete (2.7.5) lancio
>>> import time
>>> time.localtime().tm_isdst

ottengo 1 cioe' che e' in vigore l'ora legale

facendo la stessa cosa in un modulo OpenERP che sto sviluppando ottengo invece il valore 0 (verificato in debug con Eclipse 3.6.0) e gia' questo e' strano.

Se poi faccio "from datetime import datetime" e uso datetime.now() e datetime.utcnow() da riga di comando ottengo due valori corretti (UTC con le 2 ore in meno), mentre dal modulo ottengo lo stesso valore! :yikes:

Devo fare qualche impostazione particolare nel modulo?!?
Sono due giorni che ci sto perdendo tempo e non riesco a venirne fuori.

Grazie per l'aiuto.

Marco
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Strano comportamento con time.localtime() 5 Anni 8 Mesi fa #12148

  • django
  • Avatar di django
  • Offline
  • Junior Boarder
  • Messaggi: 33
  • Ringraziamenti ricevuti 5
  • Karma: 0
ciao,

magari la conosci già, ma vedi questa: www.slideshare.net/openobject/openerp-61...hanges?from_search=1
spiega un pò di cose al riguardo :)

dj
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.

Strano comportamento con time.localtime() 5 Anni 8 Mesi fa #12155

  • mmsyn
  • Avatar di mmsyn
  • Offline
  • Fresh Boarder
  • Messaggi: 5
  • Karma: 0
Grazie alla tua indicazione alla fine sono riuscito a fare quanto volevo (avevo bisogno di sapere se e' attiva l'ora legale o meno).

Per condividere quanto fatto :

...
from datetime import datetime
import pytz
...
mytimezone=pytz.timezone(context["tz"].encode('ascii','ignore'))
oralegale=int(datetime(anno, mese, giorno, ore, minuti, tzinfo=pytz.utc).astimezone(mytimezone).tzinfo._dst.seconds / 3600 )
...

Saluti,
M.
Ultima modifica: 5 Anni 8 Mesi fa da mmsyn.
L\'Amministratore ha disattivato l\'accesso in scrittura al pubblico.
Tempo creazione pagina: 0.130 secondi

Odoo Italia Associazione - C.F: 94200470485 - Sede: Viale dei Cadorna, 83 - Firenze - Italy

Protected by R Antispam