Re: [Python] Test su locale

2010-06-29 Per discussione Manlio Perillo
Il 29/06/2010 16:09, Pietro Battiston ha scritto:
 Ohilà,
 
 sapreste suggerirmi un modo furbo per fare dei test che giochino con
 le locale e siano portabili?
 
 
 Questo breve test:
 
 http://trac.gispython.org/lab/browser/Shapely/branches/1.2/shapely/tests/wkt_locale.txt
 
 è scritto per verificare che shapely - la libreria di cui fa parte - si
 comporti bene anche con locale in cui il separatore decimale è una
 virgola. Il problema è che il test ovviamente fallisce sui sistemi in
 cui la locale prescelta, 'pt_BR.UTF-8', non è installata.
 
 Per quel che ne so, l'unica locale che si può presumere installata
 ovunque è C, che però è inutile per quel che riguarda il test del
 separatore decimale.
 
 Idee? Non sono nemmeno riuscito a capire se esiste un modo (che non sia
 ravanare tra i file di sistema) per capire _quali_ locale sono
 disponibili...
 

Non utilizzare il locale di sistema, ed usa invece CLDR
http://cldr.unicode.org/

implementato in Babel:
http://babel.edgewall.org/



Ciao  Manlio
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Test su locale

2010-06-29 Per discussione Marco Mariani
On Tue, 2010-06-29 at 16:09 +0200, Pietro Battiston wrote:

 Idee? Non sono nemmeno riuscito a capire se esiste un modo (che non sia
 ravanare tra i file di sistema) per capire _quali_ locale sono
 disponibili...

su linux, 'locale -a'



___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Test su locale

2010-06-29 Per discussione Pietro Battiston
Il giorno mar, 29/06/2010 alle 17.17 +0200, Manlio Perillo ha scritto:
 Il 29/06/2010 16:09, Pietro Battiston ha scritto:
  Ohilà,
  
  sapreste suggerirmi un modo furbo per fare dei test che giochino con
  le locale e siano portabili?
  
  
  Questo breve test:
  
  http://trac.gispython.org/lab/browser/Shapely/branches/1.2/shapely/tests/wkt_locale.txt
  
  è scritto per verificare che shapely - la libreria di cui fa parte - si
  comporti bene anche con locale in cui il separatore decimale è una
  virgola. Il problema è che il test ovviamente fallisce sui sistemi in
  cui la locale prescelta, 'pt_BR.UTF-8', non è installata.
  
  Per quel che ne so, l'unica locale che si può presumere installata
  ovunque è C, che però è inutile per quel che riguarda il test del
  separatore decimale.
  
  Idee? Non sono nemmeno riuscito a capire se esiste un modo (che non sia
  ravanare tra i file di sistema) per capire _quali_ locale sono
  disponibili...
  
 
 Non utilizzare il locale di sistema, ed usa invece CLDR
 http://cldr.unicode.org/
 
 implementato in Babel:
 http://babel.edgewall.org/
 

Uhm... se ho capito bene, intendi che non è da cambiare (solo) il test,
ma la funzione testata.

Ma sempre se ho capito bene, il problema è che la rappresentazioni dei
numeri è fornita da una libreria C sottostante e indipendente.

E se ho capito miracolosamente bene, babel lo devo decidere di
utilizzare esplicitamente io quando rappresento stampo un numero/una
data, cosa che invece quella libreria python non fa affatto...

Quindi la risposta sarebbe che senza andare a cambiare il codice C, un
test come quello semplicemente non può esistere?

Pietro

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


[Python] Nessuna finestrella su windows

2010-06-29 Per discussione Vittorio Zuccala'
Ciao a tutti,
sicuramente è una FAQ ma purtroppo non riesco a trovare la soluzione al
problema (forse un problema di parole chiavi :-( )
Ho uno script in python che viene lanciato su windows tramite le operazioni
pianificate e non necessita di interazione con l'utente.
Quali opzioni o procedura posso attuare per non far apparire la finestrella
del prompt del MSDOS ad ogni avvio (evitando per altro che l'utente la
chiuda inavvertitamente?

Grazie per le risposte,
Vittorio
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Nessuna finestrella su windows

2010-06-29 Per discussione Valerio Turturici
Il giorno mar, 29/06/2010 alle 18.37 +0200, Vittorio Zuccala' ha
scritto:
 Ciao a tutti,
 sicuramente è una FAQ ma purtroppo non riesco a trovare la soluzione
 al problema (forse un problema di parole chiavi :-( )
 Ho uno script in python che viene lanciato su windows tramite le
 operazioni pianificate e non necessita di interazione con l'utente.
 Quali opzioni o procedura posso attuare per non far apparire la
 finestrella del prompt del MSDOS ad ogni avvio (evitando per altro che
 l'utente la chiuda inavvertitamente?
 

Prova a rinominare il modulo in .pyw.

Ciao.

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Nessuna finestrella su windows

2010-06-29 Per discussione Valerio Turturici
Il giorno mar, 29/06/2010 alle 19.58 +0200, Daniele Varrazzo ha scritto:
 Questo funziona solo se si fa doppio click sull'icona in gestione risorse.
 
 Se lo script è schedulato, invoca pythonw.exe invece di python.exe (che è
 quello che succede dietro le quinte coi file .pyw)
 

Quindi se lo script è schedulato e lo si salva con estensione .pyw non
cambia nulla? Si deve impostare pythonw.exe manualmente?

___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Nessuna finestrella su windows

2010-06-29 Per discussione Daniele Varrazzo
On Tue, 29 Jun 2010 20:06:44 +0200, Valerio Turturici
turturici.vale...@gmail.com wrote:
 Il giorno mar, 29/06/2010 alle 19.58 +0200, Daniele Varrazzo ha scritto:
 Questo funziona solo se si fa doppio click sull'icona in gestione
 risorse.
 
 Se lo script è schedulato, invoca pythonw.exe invece di python.exe (che
 è
 quello che succede dietro le quinte coi file .pyw)
 
 
 Quindi se lo script è schedulato e lo si salva con estensione .pyw non
 cambia nulla? Si deve impostare pythonw.exe manualmente?

Prova ad andare in una sessione dos e a digitare il nome di uno script:
viene eseguito o no? vado a tentoni, non ho windows qui e non lo uso da
tanto, ma mi sembra che tu non possa eseguire lo script come sotto unix
impostando il permesso +x. Quindi se vuoi eseguire lo script devi invocare
esplicitamente l'interprete. Sempre andando a memoria, su windows ci sono 2
interpreti: python.exe e pythonw.exe, che hanno la differenza di cui si è
parlato.

Probabilmente, per schedulare lo script, Vittorio ha un
C:\python26\python.exe C:\da\qualche\parte\lo\script.py. In questo caso
sostituendo python.exe con pythonw.exe la console non dovrebbe comparire.


-- 
Daniele Varrazzo - Develer S.r.l. 
http://www.develer.com
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Test su locale

2010-06-29 Per discussione Manlio Perillo
Il 29/06/2010 17:54, Pietro Battiston ha scritto:
 Il giorno mar, 29/06/2010 alle 17.17 +0200, Manlio Perillo ha scritto:
 Il 29/06/2010 16:09, Pietro Battiston ha scritto:
 Ohilà,

 sapreste suggerirmi un modo furbo per fare dei test che giochino con
 le locale e siano portabili?

 [...]

 Idee? Non sono nemmeno riuscito a capire se esiste un modo (che non sia
 ravanare tra i file di sistema) per capire _quali_ locale sono
 disponibili...


 Non utilizzare il locale di sistema, ed usa invece CLDR
 http://cldr.unicode.org/

 implementato in Babel:
 http://babel.edgewall.org/

 
 Uhm... se ho capito bene, intendi che non è da cambiare (solo) il test,
 ma la funzione testata.
 

Se devi scrivere codice nuovo o se il codice è tuo (ed è scritto in
Python), probabilmente è la scelta migliore.

 Ma sempre se ho capito bene, il problema è che la rappresentazioni dei
 numeri è fornita da una libreria C sottostante e indipendente.
 

Il problema è che quel modulo è un wrapper di una libreria C, che quindi
accede alle informazioni del locale in C.

In questo caso c'è poco da fare; devi installare sul sistema tutti i
locale che ti servono.



Ciao  Manlio
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Nessuna finestrella su windows

2010-06-29 Per discussione Valerio Turturici
Il giorno mar, 29/06/2010 alle 20.16 +0200, Daniele Varrazzo ha scritto:
 Prova ad andare in una sessione dos e a digitare il nome di uno script:
 viene eseguito o no? vado a tentoni, non ho windows qui e non lo uso da
 tanto, ma mi sembra che tu non possa eseguire lo script come sotto unix
 impostando il permesso +x.

Non uso Windows da tanto e sul portatile non ce l'ho, però ricordo che
per eseguire uno script si deve scrivere python nome.py.

 Quindi se vuoi eseguire lo script devi invocare
 esplicitamente l'interprete.

Esattamente.

  Sempre andando a memoria, su windows ci sono 2
 interpreti: python.exe e pythonw.exe, che hanno la differenza di cui si è
 parlato.

Si.

 
 Probabilmente, per schedulare lo script, Vittorio ha un
 C:\python26\python.exe C:\da\qualche\parte\lo\script.py. In questo caso
 sostituendo python.exe con pythonw.exe la console non dovrebbe comparire.

Non ho mai schedulato script su Windows, però se si deve solo inserire
il percorso dello script, allora rinominarlo in .pyw dovrebbe bastare
visto che l'interprete pythonw.exe viene chiamato in automatico.


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Nessuna finestrella su windows

2010-06-29 Per discussione Daniele Varrazzo
On Tue, 29 Jun 2010 20:35:58 +0200, Valerio Turturici
turturici.vale...@gmail.com wrote:
 Il giorno mar, 29/06/2010 alle 20.16 +0200, Daniele Varrazzo ha scritto:

 Prova ad andare in una sessione dos e a digitare il nome di uno script:
 viene eseguito o no? vado a tentoni, non ho windows qui e non lo uso da

 Non uso Windows da tanto e sul portatile non ce l'ho, però ricordo che
 per eseguire uno script si deve scrivere python nome.py.

 Probabilmente, per schedulare lo script, Vittorio ha un

 Non ho mai schedulato script su Windows, però se si deve solo inserire

Ok, visto che stiamo andando alla cieca tutti e due :D lasciamo fare le
prove a Vittorio: ormai ha tutti gli elementi sottomano e può risolvere il
problema :) Ormai avrà capito che l'estenzione .pyw e l'eseguibile pythonw
sono strettamente correlati.

-- 
Daniele Varrazzo - Develer S.r.l. 
http://www.develer.com
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Nessuna finestrella su windows

2010-06-29 Per discussione Manlio Perillo
Il 29/06/2010 20:16, Daniele Varrazzo ha scritto:
 [...]
 Prova ad andare in una sessione dos e a digitare il nome di uno script:
 viene eseguito o no? vado a tentoni, non ho windows qui e non lo uso da
 tanto, ma mi sembra che tu non possa eseguire lo script come sotto unix
 impostando il permesso +x. Quindi se vuoi eseguire lo script devi invocare
 esplicitamente l'interprete.

Non è corretto.
Puoi rendere uno script eseguibile aggiungendo il path .py e .pyw
nella variabile di ambiente PATHEXT.

Di default (almeno sulla versione che sto usando) il valore è:
.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH

Se aggiungi .PY;.PYW dovrebbe funzionare.


Invece di utilizzare la shebang, Windows sa cosa utilizzare per eseguire
un file utilizzando le informazioni che si trovano nel registro di
configurazione, in HKEY_LOCAL_MACHINE\SOFTWARE\Classes:
http://support.microsoft.com/kb/257592

Ad esempio:
HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Python.File\shell\open\command -
`C:\Python26\python.exe %01 %*`


Il problema è quando hai più versioni di Python installate sul
sistema; verrà sempre utilizzata l'ultima installata.

 [...]


Ciao  Manlio
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Nessuna finestrella su windows

2010-06-29 Per discussione Manlio Perillo
Il 29/06/2010 22:31, Daniele Varrazzo ha scritto:
 [...]
 Non è corretto.
 Puoi rendere uno script eseguibile aggiungendo il path .py e .pyw
 nella variabile di ambiente PATHEXT.

 Di default (almeno sulla versione che sto usando) il valore è:
 .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH

 Se aggiungi .PY;.PYW dovrebbe funzionare.
 
 Pathext serve per lo più per il lavoro in interattivo. Se ci si affida a
 quello, lo script diventa dipendente da una variabile d'ambiente che va
 settata per l'utente giusto 

Cosa intendi con utente giusto?
PATHEXT può semplicemente essere impostata come variabile di ambiente
globale.

 (che non so quanto sia facile su windows). È
 c'è sempre il problema che riferisci anche tu in caso di installazione
 multipla. Potrebbe, ma non ne sono sicuro e figurati se controllo, essere
 anche una variabile interpretata da cmd.exe e che quindi viene ignorata
 dallo scheduler. 

Il nome della chiave fa capire che è usato dalla shell; resta da vedere
come lo scheduler esegua i programmi.

PATHEXT credo dovrebbe essere utilizzato dalla funzione ShellExecuteEx:
http://msdn.microsoft.com/en-us/library/bb759784(v=VS.85).aspx


 Tutto sommato ignorerei l'esistenza di PATHEXT per
 qualunque cosa aspiri ad essere un minimo robusta.
 

Su questo concordo; se è possibile meglio specificare l'interprete
esplicitamente.


Ciao  Manlio
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python