Re: [Python] Porting medica2 Was: [OT] Cerco posto lavoro stimolante.

2010-01-16 Per discussione Y3s

Il giorno 16/gen/2010, alle ore 11.04, Enrico Franchi ha scritto:
 
 Se poi provassi mobile me, vedresti un'interfaccia web ricca tanto quanto
 quella dell'OS. E a volte trovo un'esagerazione questo scimmiottamento, ma
 tant'e. 

Eh beh c'è anche roba come:

http://280slides.com/Editor/


 Infine, stavamo parlando di un gestionale. Molti analisti sono giunti alla
 conclusione che per questo tipo di applicazioni il web e' *davvero* piu'
 comodo. Nota, non intendere questo come un principio di autorita', intendilo
 piu' come esperimenti separati hanno portato a queste conclusioni. Questo
 puoi vederlo visto gli sviluppi concreti delle applicazioni. Sarebbe carino
 leggere i documenti di analisi, che ti porterebbero probabilmente piu'
 informazione sulle scelte reali alla base di questo.

Avevo già sentito parlare di analisi del genere, ed avevo già notato che sono 
un po' superficiali.
Probabilmente la conclusione è corretta per una percentuale molto grande degli 
utenti di questo genere di applicazioni, ma in MOLTI casi l'integrazione con il 
sistema fisico sottostante è semplicemente necessaria. Esempio banale: lettori 
di barcode non in emulazione di tastiera, oppure stampanti di barcode, o 
qualunque altra periferica (plotter, registratori di cassa, macchinari 
industriali, ecc). 
Sono esigenze piuttosto diffuse, che con un'applicazione web pura diventano 
difficili da soddisfare, sebbene non impossibili.

D'altra parte è anche ovvio che avendo un'applicazione web ben strutturata e 
con una api chiara e pulita, metterci su un client desktop diventa un lavoro 
banale. 

Infine, c'è da dire che l'applicazione desktop è ancora vista MOLTO spesso come 
più performante/più comoda da usare/meno error prone. Questa situazione sta 
cambiando rapidamente, ma ancora molti clienti (soprattutto in realtà piccole o 
ignoranti informaticamente) chiedono espressamente un'interfaccia desktop, e 
personalmente ho avuto almeno due esperienze in cui sostituire l'interfaccia 
desktop con una web, per quanto ben congegnata, avrebbe fatto probabilmente 
perdere produttività agli utenti, che ormai utilizzavano (una singola funzione 
de) il software letteralmente ad occhi chiusi e attendendosi stabilità e 
rapidità di risposta molto alte. Probabilmente oggi con i vari framework 
javascript (extjs, cappuccino, ecc) si riuscirebbe ad ottenere un'interfaccia 
web equivalente, ma non ne sono del tutto sicuro. 
Ciò di cui sono sicuro è che sono probabilmente esigenze di nicchia di cui non 
vale la pena di preoccuparsi accingendosi a sviluppare un software open source 
in modo collaborativo. Ripeto: quando (e se) si presenta l'esigenza, se non c'è 
un modo per risolverla in maniera soddisfacente con javascript, sviluppare un 
client desktop è molto semplice.

--
Antonio Valente


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


Re: [Python] integrare grafici in applicazioni django

2009-07-18 Per discussione Y3s


Il giorno 17/lug/09, alle ore 19:47, Massimo Azzolini ha scritto:




2009/7/17 Emanuele Scopel scopel.emanu...@gmail.com
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

On Fri, 17 Jul 2009 08:09:08 +0200
Massimo Azzolini massimo.azzol...@gmail.com wrote:

 a pagamento (ma non costa molto)http://www.ejschart.com
 ti danno anche tutti i sorgenti

preferisco rimanere per quanto possibile in ambito open


allora mi suggerivano:
http://code.google.com/p/flot/

(mai usato, ma interessante a prima vista)



Per cose semplici è molto comodo, altrimenti c'è amCharts: http:// 
www.amcharts.com/
Non è open, ma è gratuito ed è molto potente e piuttosto semplice da  
usare...


--
Antonio Valente


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


Re: [Python] ricompilare python: porta vantaggi?

2009-01-22 Per discussione Y3s

Il giorno 22/gen/09, alle ore 15:36, ugaciaka ha scritto:


 Magari scrivere uno script che stressi il processore e vederne le
 differenze fra python ricompilato e non.

Mi sembra un test davvero poco utile...python è notoriamente inadatto  
per applicazioni cpu bound!
Dubito che riuscirai a vedere differenze importanti...


--
Antonio Valente


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


Re: [Python] Uno script Round Robin

2008-12-21 Per discussione Y3s

Il giorno 21/dic/08, alle ore 20:52, Manlio Perillo ha scritto:

 Nicola Larosa ha scritto:
 Manlio Perillo wrote:
 [...]
 Se i nomi delle directory sono davvero, 'a', 'b', etc, allora puoi
 rendere il codice ancora più compatto:

 for i, name in enumerate(range(ord('a'), ord('a') + 7)):
  name = chr(name)

 Eddai, Manlio! :-)

 Primo, non è più compatto! :-P


 Si, che lo è!

E allora...

for i, name in enumerate(__import__(string).lowercase[:6]):

:-)


--
Antonio Valente


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


Re: [Python] widget canvas

2008-10-31 Per discussione Y3s


Il giorno 31/ott/08, alle ore 15:57, maria saletta ha scritto:


Salve!
Vorrei sapere se esiste il widget canvas in wxpython.
Devo caricare all'interno del canvas un'immagine e farne poi il  
drag and drop.



Prova a vedere la demo di wx, in miscellaneous-PseudoDC, penso sia  
quello che fa per te...


Ciao

--
Antonio Valente


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


Re: [Python] importare modulo da directory superiore

2008-07-28 Per discussione y3s


lun 28/07/08 16:32 , 'enrico franchi' [EMAIL PROTECTED] ha inviato:
 On Sun, Jul 27, 2008 at 11:47 PM, Manlio Perillo
 
 manl
 [EMAIL PROTECTED] wrote:
 
 
  A partire da Python 2.5:
 
  from .. import x
 
 
 
  http://docs.python.org/whatsnew/pep-328.html
 
 
  Comunque si consiglia di usare sempre gli import
 assoluti.
 
 
 Vero, però per il testing unitario a me fa comodo. :P
 
 
 
 
 
 -- 
 
 -enrico
 
 ___
 
 Python mailing list
 
 Python
 @lists.python.it
 http://lists.python.it/mailman/listinfo/python
 
 
 

 Nuova grafica e nuove funzionalità! Crea subito Gratis la tua nuova 
Casella di Posta  Katamail
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Consiglio ambiente di sviluppo

2008-07-19 Per discussione Y3s

Il giorno 19/lug/08, alle ore 11:16, enrico franchi ha scritto:

 Poi TextMate è diverso da Emacs e da vim (anche se non estremamente
 diverso dal primo, per certi versi). A mio modesto parere è migliore
 di entrambi, ma non posso che limitarmi a considerarla la mia opinione
 relativa al mio utilizzo.


Curioso, io lo vedo più simile al secondo :-)
Comunque anche a me piace di più textmate, ma semplicemente per il  
fatto che è più moderno come interfaccia e che è integrato nel  
sistema operativo. Che sono contemporaneamente anche svantaggi (usa  
tm su ssh su un server linux o bsd!). D'altronde come hai detto  
sopra, la filosofia è la stessa, e i tre strumenti sono di uguale  
potenza (certo, tm e vim li estendi in python ;-) )

--
Antonio Valente


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


Re: [Python] Consiglio ambiente di sviluppo

2008-07-18 Per discussione Y3s

Il giorno 18/lug/08, alle ore 21:56, Francesco Stablum ha scritto:

 2008/7/18 Giovanni Marco Dall'Olio [EMAIL PROTECTED]:
 2008/7/18 Francesco Stablum [EMAIL PROTECTED]:
 Purtroppo non l'ho ancora usato estensivamente, sono fermo sul gran
 bel trattore vim che funziona sempre e comunque :)

 Accidenti pensavo che ci fossero meno persone ad usare ancora vim :).
 Cmq anche per me va benissimo.

 L'unica accortezza é quella di abbinarlo a ipython
 (http://ipython.scipy.org/moin/) piuttosto che all'interprete python
 tradizionale, perché é molto più comodo.

 Purtroppo vim non ha un sacco di funzionalita' che farebbero comodo,

Quest'affermazione è falsa. Vim HA un sacco di funzionalità comode ;-)
Comuqnue ha i plugin, se non lo trovi già fatto te lo puoi sempre  
sviluppare...in python.

 come ad esempio
 syntax-checking

Puoi integrarlo facilmente con pylint e immagino con tutti gli altri  
tool simili...non so se esista anche qualcosa che ti fa il check  
mentre digiti, probabilmente si, in caso contrario puoi sempre  
pensare di svilupparlo tu.

 e il completamento automatico, carenze che sono comuni anche

Questo è ugualmente falso. CTRL-N fa l'autocompletamento per i buffer  
aperti, poi c'è pydiction, poi c'è un altro di cui non ricordo il  
nome...GIYF!

--
Antonio Valente


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


Re: [Python] Refactoring in wxPython

2008-06-25 Per discussione Y3s

Il giorno 24/giu/08, alle ore 14:45, Mr.SpOOn ha scritto:

 On Mon, Jun 23, 2008 at 8:08 PM, Y3s [EMAIL PROTECTED] wrote:
 Metterle in una lista? O meglio, in un dizionario?
 In realtà in python hai anche setattr:

 for name in (t1, t2, t3):
 setattr(mioframe, name, wx.TextCtrl(...))

 Mmm, setattr sembra più comodo. Ci sono vantaggi/svantaggi nell'usarlo
 al posto del dizionario?

Lo è. Ma la comodità si paga ;-)
Vantaggi la compattezza e l'eleganza del codice
Svantaggi principalmente che rischi di rendere il tuo codice  
incomprensibile o comunque meno chiaro, e poi non funziona  
l'autocompletamento di ipython :-)

Insomma, usalo ma non abusarne!

--
Antonio Valente


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


Re: [Python] wxPython troubles

2008-06-23 Per discussione Y3s

Il giorno 23/giu/08, alle ore 14:20, simone ha scritto:

 Giovanni Urpanti ha scritto:

 Mi spiego meglio, voglio fare in modo che appena l'utente apra una
 finestra, la parent sia disattivata e non possa essere utilizzata  
 fino
 alla chiusura di quella appena aperta.
 Grazie a tutti coloro che sapranno darmi delucidazioni

 Prova a cercare la proprietà modal del frame.

 Ad esempio:
 http://www.barisione.org/wxpython/cap5.html

 dice di mettere:

 dlg.ShowModal()

 anziché

 dlg.Show()


Questo funziona solo per i dialog, non per i frame. Il modo giusto in  
effetti sarebbe quello di usare un dialog, che è esattamente un frame  
che può essere modale (più altre piccole differenze).
Se non vuoi, per qualche motivo strano, usare i dialog, l'unica è  
quella che è stata già suggerita: disabilitare il frame con Enable 
(False) e poi gestire a mano i vari eventi di focus/activate..insomma  
reimplementare dialog ma peggio :-)

--
Antonio Valente


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


Re: [Python] Refactoring in wxPython

2008-06-23 Per discussione Y3s

Il giorno 23/giu/08, alle ore 18:39, Mr.SpOOn ha scritto:

 ne servono in un ciclo. Si puo' fare una cosa del genere? Il mio
 dubbio riguarda il fatto che per delle operazioni ho bisogno di
 potermi riferire a una specifica casella di testo, quindi, se io le
 genero in un ciclo, come posso differenziare una casella dall'altra?

Metterle in una lista? O meglio, in un dizionario?
In realtà in python hai anche setattr:

for name in (t1, t2, t3):
 setattr(mioframe, name, wx.TextCtrl(...))

Ma attenzione a non creare un mostro illeggibile e ingestibile!

--
Antonio Valente


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


Re: [Python] Colorare StaticBoxSizer

2008-06-16 Per discussione Y3s

Il giorno 16/giu/08, alle ore 16:46, Mr.SpOOn ha scritto:

 Salve,
 dovrei impostare uno sfondo colorato per uno StaticBoxSizer (quello
 col bordo arrotondato, insomma).

Mi sa proprio che non puoi, a meno che non ti vai a ridefinire  
l'EVT_PAINT del panel in modo da calcolare i margini dello staticbox  
e disegnare all'interno...

--
Antonio Valente


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


Re: [Python] Consiglio su utilizzo di variabili globali

2008-05-04 Per discussione Y3s

Il giorno 04/mag/08, alle ore 16:14, enrico franchi ha scritto:

 On Sat, May 3, 2008 at 4:33 PM, Mr. SpOOn [EMAIL PROTECTED]  
 wrote:

  In effetti avevo pensato proprio a una cosa simile. Come mai è  
 meglio
  lasciarli perdere?

 Perchè non fanno assolutamente nulla. Se devi scrivere una funzione
 per fare un assegnamento, scrivi l'assegnamento e basta.
 Quella dei setter/getter banali è una mania dei Javisti che sarebbe
 bene non fare proliferare ulteriormente.


In java tipicamente HA senso, visto che rifattorizzare ha un costo  
immensamente piu'alto che in linguaggi agili...poi con le  
simpaticissime regole di visibilita' e i minimo 5 livelli di  
gerarchia di classi tipici, tantovale far fare il proprio mestiere a  
eclipse/netbeans/quellochee' ;-)
In python naturalmente ha ben poco senso, vista la presenza delle  
property e vista la facilita' di refactoring...

--
Antonio Valente


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


Re: [Python] Programmazione web

2008-04-27 Per discussione Y3s

Il giorno 27/apr/08, alle ore 17:36, Lawrence Oluyede ha scritto:

 2008/4/27 Manlio Perillo [EMAIL PROTECTED]:
  No, mi riferivo alla tua ipotesi che qualsiasi patch di un  
 qualsiasi

 browser non ti tolga il terreno da sotto i piedi.

 Mi era venuto in mente che IE5 aveva problemi con HTTP Digest


Forse vuoi dire IE5 aveva problemi con .* ;-)

--
Antonio Valente


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


Re: [Python] Programmazione web

2008-04-25 Per discussione Y3s

Il giorno 24/apr/08, alle ore 23:56, Enrico 'Henryx' Bianchi ha scritto:

 Attualmente, volevo studiarmi Python in modo da applicarlo alla
 programmazione web. Da quello che ho capito leggendo in giro, ho due
 alternative:

Hai un concetto molto personale di due ;-)


 - programmazione CGI;

No, al massimo se vuoi restare a livello abbastanza basso, WSGI

 - programmazione attraverso application server;

Non so quanto ti convenga...dipende ovviamente dalle esigenze!

 - programmazione tramite server pages;

Per replicare PHP  company? L'unico uso che vedo per questo genere  
di cose è di aggiungere un minimo (veramente minimo) di dinamismo a  
un sito web essenzialmente statico. Ma se questa è l'esigenza,  
tantovale usare PHP, che è più diffuso tra gli hoster!

 - programmazione tramite framework.

Nel caso medio è la soluzione migliore. Ma esistono tante di quelle  
soluzioni che non è una scelta semplice!


 Ora, visto che da quello che ho visto gli approcci possono essere
 molteplici e tutti con i loro pro e contro, quale conviene utilizzare?

Beh, come al solito la domanda non ha una risposta...devi sapere tu  
le tue esigenze, e cominciare a scegliere gli strumenti che meglio  
sodddisfano queste esigenze. Poi quando avrai limitato la scelta,  
scegli pure quello che ti piace di più!

 Da quello che ho visto e capito l'approccio migliore e` utilizzando un
 framework tipo Twisted o utilizzando WSGI, ma sinceramente sono
 abbastanza confuso...


Twisted è un po' più a basso livello di altri tipo django, per cui  
più complesso da usare, ma ovviamente più flessibile. WSGI è ancora  
più a basso livello, non è pensabile usare direttamente WSGI, ma  
userai ocmunque un framework che si basa su WSGI. Il vantaggio (tutto  
teorico ad oggi, IMHO) è che puoi facilmente integrare applicazioni  
WSGI differenti.
Nove volte su dieci, comunque, un web framework tipo django,  
pylons,ecc. è sufficiente per le tue esigenze. Se devi creare un  
server multiprotocollo che deve scalare ottimamente, twisted è la  
soluzione migliore in genere...

Ciao

 Enrico

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

--
Antonio Valente


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


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s

Il giorno 03/feb/08, alle ore 20:30, giuseppe saviano ha scritto:

CUT

 ho capito che la progettazione uml in alcuni casi risulta limitante;

In alcuni casi?!? Sempre direi...UML è IMHO una roba di cui non ho  
mai capito il senso. Se devo spiegare un concetto ad altre persone è  
molto più facile e comprensibile un pezzo di codice ben scritto  
(soprattutto se è python). Se lo devo spiegare a un non tecnico,  
avere uno schema pieno di riquadri, linee e freccette non aiuta di  
certo...mentre per la documentazione, codice ben scritto si documenta  
al 90% da sè. I commenti servono proprio a spiegare il 10% rimanente.  
Insomma, non trovo una sola applicazione utile di UML, se non quella  
di vendere tanti libri e rompere le scatole a chi vorrebbe produrre  
invece di perdere del tempo ;-)

 nella stessa serie di messaggi si parlava poi di list comprehension
 ... altri esempi?


Altri esempi di cosa? Di roba pythonica? Prova ad aprire una shell  
e digitare:

  import this


--
Antonio Valente


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


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s

Il giorno 03/feb/08, alle ore 21:41, Enrico Franchi ha scritto:


 On Feb 3, 2008, at 8:44 PM, Giorgio Zoppi wrote:

 Questa affermazione non la capisco,sarò

 La spiego.

 che sono ignorante, mi dispiace. UML è ottimo per documentare il
 codice
 e l'interazione tra  i sottosistemi, e anche per pensare a pattern.

 Documentare il codice con UML?

 1. per l'interazione tra i sottosistemi ci potrebbe pure stare.
 peccato che non sia necessario; oltre tutto ci sono tante di quelle
 parti lasciate scoperte (volutamente) dallo standard che anche li
 bisogna praticamente sempre definirsi il proprio dialetto.

E in ogni caso è poco espressivo.

 2. per documentare il codice, direi proprio di no. In primo luogo
 perchè UML diventa particolarmente rognoso quando si scende nei
 dettagli: la documentazione del codice spesso non prescinde dai
 dettagli, ergo eccoci con UML in difficoltà. In secondo luogo nel
 tempo in cui ci va a fare un diagramma (anzi, i due o tre diagrammi
 necessari per una data fase) UML si ripulisce il codice fino a
 renderlo sostanzialmente auto-esplicativo, tramite l'uso di
 nomenclatura *chiara*, docstrings, tests ed eventualmente se tutto
 questo non bastasse commenti mirati.

Quoto


 3. pensare a pattern è diverso da *conoscere* i pattern. pensare a
 pattern è come dire pensare a mattoncini: se qualcuno mi dicesse che
 penso a mattoncini io gli tirerei due schiaffoni. Non si *pensa* a
 pattern; quando si conoscono *bene* i pattern si *vedono* nel problema
 i pattern. Ma questo è un modo a posteriori di usare i pattern;
 viceversa pensare a pattern usa unità di ragionamento e struttura
 troppo rigide.

Quoto. Diverso è parlare a pattern, dove e quando possibile).



--
Antonio Valente


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


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s

Il giorno 03/feb/08, alle ore 22:36, Manlio Perillo ha scritto:



 Waterfall? Gli anni '80 sono passati da un po' eh ;-)
 Comunque, nessuno nega che la formalizzazione dei flussi di
 informazioni tra persone diverse dello stesso team o tra team diversi
 sia necessaria, ma io (e penso altri) non capisco perchè uml. Non
 capisco i vantaggi di uml rispetto a un altro linguaggio più
 espressivo. Probabilmente perchè avere un diagramma fa più fico nelle
 riunioni?


 Pensa che ho avuto una discussione simile nell'ambito SQL su cosa  
 fosse
 meglio usare: un diagramma E/R o del semplice codice pseudo SQL.


Però già un diagramma E/R è diverso: è più semplice e non c'è bisogno  
di imparare un nuovo formalismo, bastano 2 o 3 convenzioni, poi tutti  
riescono a scrivere una tabellina di campi. Mentre UML è un vero  
formalismo, ingessato, poco flessibile, non si impara certo in 10  
minuti. Quello che dico è: se dobbiamo insegnare a uno un linguaggio  
come UML, non conviene insegnargli un linguaggio reale?
Comunque tra diagramma E/R e codice SQL generico penso sia davvero  
una questione di gusti!


 La mia tesi a favore del codice SQL era la facilità di modifica e
 versionamento (specialmente se condiviso) mentre un diagramma  
 grafico è
 una rottura da gestire.


 La sua tesi era che non si deve scrivere codice nella fase di design
 (ok, ma un diagramma E/R non è codice?).


Infatti.

--
Antonio Valente


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


Re: [Python] Python vs UML

2008-02-03 Per discussione Y3s

Il giorno 04/feb/08, alle ore 00:02, Enrico Franchi ha scritto:


 On Feb 3, 2008, at 10:32 PM, Domenico Chierico wrote:

 No no ma infatti sono d'accordo che probabilmente il diagramma delle
 classi e' la parte piu' inutile dell'uml ... secondo me soprattutto
 nelle universita l'uml e' spiegato e insegnato in modo insensato.

 Vediamo un po' sto UML... tutta la parte di UseCase (che per inciso è
 il pezzo più utile dell'ambaradan) è un'inutile formalizzazione di una
 cosa molto naturale.
 E' precisamente il pezzo in cui si vede quanto la descrizione testuale
 sia *molto* più importante del disegnino. A questo punto, seghi i
 disegnini, rendi il tutto più umano e meno formale invece che 'use-
 case' hai delle stories: più leggibili, comprensibili e comode.


E se chi le scrive ha il giusto senso dell'umorismo anche molto più  
simpatiche e di conseguenza leggere da leggere (doh!)

CUT

 Ma quindi di utile cosa ci sarebbe?

Il case da K$ dell'altro post forse? ;-)


--
Antonio Valente


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


Re: [Python] Messaggi di errore con wxPython

2008-02-01 Per discussione Y3s

Il giorno 01/feb/08, alle ore 10:58, Crash Override ha scritto:

 Salve,
 vorrei porvi una domanda che forse può sembrare stupida, ma è da poco
 che sviluppo in Python.
 E' possibile 'riuscire' a leggere i messaggi di errore della wx prima
 che 'scompaiano'. Perchè ho un errore in un'applicazione scritta in
 wxPython, ma compare una finestra con gli errori sullo stderr e poi
 scompare!
 Vorrei leggere questi errori...


Quando crei l'oggetto wx.App (o wx.PySimpleApp) passa un parametro  
0 al costruttore, così:

app = wx.PySimpleApp(0)

In questo modo non viene creata quella finestra, ma tutti gli errori  
vengono riportati sullo stderr normale, ossia sulla shell se lo  
chiami da shell, in IDLE se lo chiami da lì, ecc. Naturalmente puoi  
anche redirigere lo stderr su un file se ti viene comodo (o se lanci  
doppiocliccando l'icona)

--
Antonio Valente


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


Re: [Python] lista da passare alla combobox

2008-02-01 Per discussione Y3s

Il giorno 01/feb/08, alle ore 11:51, Crash Override ha scritto:

 type(lista)

 list
 ___

 Output:
  [('Milano',), ('Torrecuso',), ('Benevento',), ('Melfi',), ('Roma',)]

E' una lista di tuple, devi trasformarla in una lista di stringhe.  
Una list comprehension è l'ideale in questi casi:

nuova_lista = [x[0] for x in lista]

Ciao

--
Antonio Valente


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


Re: [Python] lista da passare alla combobox

2008-02-01 Per discussione Y3s

Il giorno 01/feb/08, alle ore 11:25, Crash Override ha scritto:

 Bene,
 dopo aver capito come visualizzare l'errore, veniamo all'errore.
 Dunque la combox accetta una lista di Stringhe giusto?
 Allora io posso prendere un tupla da un db MySQL in questo modo:
 ...

 result = cur.fetchall()

 ora questa è una tupla allora faccio lista = list(result)
 e dopo la passo al costruttore della combobox. Sicuramente sbaglio
 perchè mi dà quest'errore:

CUT

 TypeError: String or Unicode type required



Come crei la combobox? Mi sa che passi la lista al parametro di posto  
errato...in ogni caso un print lista ti toglie il dubbio che non sia  
una lista (ma l'errore è sicuramente che hai sbagliato posizione, w i  
parametri con nome!)


--
Antonio Valente


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


Re: [Python] Linux: errore wxPython durante installazione applicazione

2008-01-31 Per discussione Y3s

Il giorno 31/gen/08, alle ore 14:17, Mr.SpOOn ha scritto:

 On Jan 31, 2008 2:09 PM, Y3s [EMAIL PROTECTED] wrote:

 Il giorno 31/gen/08, alle ore 14:00, Mr.SpOOn ha scritto:


 On Jan 31, 2008 1:54 PM, Y3s [EMAIL PROTECTED] wrote:

 Strano che non funzioni allora...prova dalla shell python a fare:

 import wxPython

 Viene fuori questo:

 __main__:1: DeprecationWarning: The wxPython compatibility package is
 no longer automatically generated or actively maintained.  Please
 switch to the wx package as soon as possible.
 Traceback (most recent call last):
   File stdin, line 1, in module
   File /usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/ 
 wxPython/__init__.py,
 line 15, in module
 import _wx
   File /usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/ 
 wxPython/_wx.py,
 line 8, in module
 from _misc import *
   File /usr/lib/python2.5/site-packages/wx-2.8-gtk2-unicode/ 
 wxPython/_misc.py,
 line 456, in module
 wxDateTime_GetNumberOfDaysinYear =  
 wx._misc.DateTime_GetNumberOfDaysinYear
 AttributeError: 'module' object has no attribute  
 'DateTime_GetNumberOfDaysinYear

Lo stesso errore che da a me su tiger...strano, perchè su Fedora 8  
invece mi funziona...in ogni caso, o ti metti a fare debug e  
sistemare le cose su wxPython (cosa che mi sembra un po' scema ;-) ),  
o ti metti a sistemare il codice dell'applicazione in modo da  
utilizzare il namespace wx ed eliminare il deprecato wxPython, oppure  
ti installi una versione più vecchia di wxPython e risolvi il  
problema :-)

Ciao

--
Antonio Valente


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


Re: [Python] Linux: errore wxPython durante installazione applicazione

2008-01-31 Per discussione Y3s

Il giorno 31/gen/08, alle ore 16:47, Matteo Buferli ha scritto:

 On Thursday 31 January 2008 13:54:17 Y3s wrote:
 [...]

 Gli sviluppatori dovrebbero leggere anche i warning ;-)
 Usare wxPython è deprecato già da un po' (2.6 mi pare), sul mio
 sistema (mac osx) non funziona proprio, ma è specificato chiaramente
 che non viene più mantenuto!

 [...]

 Quindi se uno volesse sviluppare multipiattaforma cosa dovrebbe usare?
 ho cominciato a scrivere da poco in python e dato che sto progettando
 un software non vorrei incappare in errori di progettazione.


No, mi sono spiegato male, il toolkit wxPython funziona decentemente  
anche su macosx (più che altro migliora velocemente, qualche piccolo  
problema c'è, ma niente di irreparabile)

Intendevo dire che il toolkit wxPython è diviso in due package:

- wxPython
- wx

Il primo era usato per compatibilità con il C++, ma è deprecato  
ormai, e va usato solo il primo. Quindi quando vedi nomi tipo  
wxWindow, sappi che non va bene, e devi usare quelli nella forma  
wx.Window. E tutto il codice che utilizza i vecchi nomi andrebbe  
aggiornato, visto che il package wxPython, come viene chiaramente  
indicato dal warning, non è più nè sviluppato nè mantenuto.

In ogni caso per sviluppare GUI multipiattaforma hai anche altre  
scelte, se cerchi nei vecchi archivi della lista e del ng  
it.comp.lang.python trovi un mare di discussioni, alcune utili altre  
meno ;-)

Ciao

--
Antonio Valente


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


Re: [Python] avrei bisogno del valore null... o almeno credo...

2008-01-30 Per discussione Y3s

Il giorno 30/gen/08, alle ore 18:18, Java ha scritto:


CUT

 testa = null
 for elem in lista:
 if elem.getEtichetta() ==  lista[0]:
testa = elem
 else:
testa = Elemento()

 # da qui in poi lavoro su testa

 Spero che si capisca che testa può essere sia un nuovo oggetto
 Elemento e sia un'oggetto già presente in rete.

Penso che stai ragionando in un altro linguaggio, non in python.  
Comunque, col tempo farai refactoring ;-)
In python (e in altri linguaggi furbi) non c'è alcun bisogno di  
metodi getter/setter. Accedi direttamente all'attributo che ti  
interessa, se poi un giorno hai bisogno di controllare l'accesso  
trasformerai l'attributo in una property e il tutto ti funzionerà  
automaticamente, senza modificare nient'altro. Comunque non mi è  
molto chiaro il tuo problema, ma il codice che hai scritto mi sembra  
errato, per ogni elemento della lista, se getEtichetta() non è uguale  
a lista[0] viene creato un nuovo oggetto Elemento che poi viene  
perso. Dovresti quantomeno mettere un'istruzione di uscita dal ciclo  
da qualche parte, ma probabilmente esiste una strada migliore. Di  
preciso, cosa devi fare?


 Quello che ci faccio dopo è identico in entrambi i casi, ma senza  
 valore
 null non so come fare

In python esiste l'oggetto None, che viene sempre valutato False.  
In ogni caso non mi sembra che ti serva.


 Potrei subito creare testa = Elemento(), ma se poi invece devo solo
 aggiornare un valore già presente, ho creato inutilmente un nuovo
 oggetto che resterà in giro fino al prossimo garbage collecting...


Ecco, appunto :-)
Ti consiglio di non porti troppi problemi del genere, a meno che  
questo oggetto Elemento non pesi davvero troppo non è proprio un  
problema crearlo. Soprattutto visto che nel codice sopra ne crei len 
(lista) - 1 ;-)

--
Antonio Valente


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


Re: [Python] saluti e prima domanda sulle list comprhension

2008-01-28 Per discussione Y3s

Il giorno 28/gen/08, alle ore 11:32, [EMAIL PROTECTED] ha scritto:

   
 Al di la di quello che rende 'semplice' un popolare linguaggio di
 programmazioni progettato da qualche control freak, il problema è che
 il modo più naturale, logico e comodo di lavorare con i thread è un
 modello a messaggi/code e *senza* stato condiviso.

 Bho, fore ora andiamo anche OT, ma mi sento di dissentire quest'ultima
 affermazione. Se non altro dopo tutti i vari filosofi a cena e  
 barbieri
 fatti a laboratorio concorrente. I Thread lavorano su strutture dati
 condivise. E in generale il dato condiviso fa parte dello stato del
 programma...


Strutture dati condivise che devono essere adeguatamente protette  
dall'accesso concorrente, se non vuoi i bug più bastardi che  
esistano. Tra l'altro, bug, deadlock e quant'altro, imprevedibili e  
che spesso *non* si presentano sul sistema di testing, ma solo quando  
il software va a regime, in produzione. Il multithreading a stato  
condiviso è troppo difficile da gestire, non ne vale sul serio la  
pena, soprattutto dal momento che il multiprocesso non è idealmente  
così distante, IMHO...diverso è se consideri l'approccio asincrono,  
lì va riconsiderata tutta l'architettura, e magari non è quello che  
ti serve per l'esame, ma io considererei bene di adottare  
un'architettura multiprocesso piuttosto che multithread a stato  
condiviso!


--
Antonio Valente


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


Re: [Python] Interfacce grafiche

2007-12-10 Per discussione Y3s

Il giorno 08/dic/07, alle ore 15:52, Enrico Franchi ha scritto:


 On Dec 8, 2007, at 12:43 PM, Pietro Battiston wrote:

 Rispondo io con un'altra domanda: perché non wxwidgets? Funziona
 ovunque
 (OK, non su windows mobile, QUASI ovunque) e ovunque è nativo, perché
 usa le librerie autoctone.

 Per esempio perchè su OS X fa onco.

Migliora veramente di giorno in giorno, e ormai è molto usabile anche  
su mac!

--
Antonio Valente


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


Re: [Python] Interfacce grafiche

2007-12-10 Per discussione Y3s

Il giorno 10/dic/07, alle ore 20:29, enrico franchi ha scritto:

 On Dec 10, 2007 7:49 PM, Y3s [EMAIL PROTECTED] wrote:

 Migliora veramente di giorno in giorno, e ormai è molto usabile anche
 su mac!

 Hai da indicarmi un paio di applicazioni con GUI che tu reputi  
 decorose?
 Idealmente sarebbe anche bello vedere quanto sforzo ci va per rendere
 l'applicazione decorosa.

Ho scritto usabile, non maccosa ;-)
Ad esempio, PgAdmin3, Audacity...si vede bene che non sono  
applicazioni mac, ma anche perchè sono state scritte non avendo per  
niente in mente il lookfeel di osx...ma non sono del tutto orrende,  
e sono comunuque usabili. Cosa che non posso dire ad esempio di Pan  
che uso (purtroppo) come newsreader su osx, scritto con GTK (a zuppa  
non mi riesco ad abituare, tb lo odio per i NG, nemo è troppo  
instabile e con altri non mi ci trovo, inoltre sono OT ;-) ). In  
generale le applicazioni scritte con Qt si comportano effettivamente  
un po' meglio, ma secondo me è solo questione di tempo. In ogni caso,  
come spesso hai scritto, avere una GUI multipiattaforma significa  
accettare dei compromessi!

--
Antonio Valente


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


Re: [Python] Interfacce grafiche

2007-12-10 Per discussione Y3s

Il giorno 10/dic/07, alle ore 21:32, Paolo Amodio ha scritto:


 Il giorno 10/dic/07, alle ore 19:49, Y3s ha scritto:


 Il giorno 08/dic/07, alle ore 15:52, Enrico Franchi ha scritto:


 On Dec 8, 2007, at 12:43 PM, Pietro Battiston wrote:

 Rispondo io con un'altra domanda: perché non wxwidgets? Funziona
 ovunque
 (OK, non su windows mobile, QUASI ovunque) e ovunque è nativo,
 perché
 usa le librerie autoctone.

 Per esempio perchè su OS X fa onco.

 Migliora veramente di giorno in giorno, e ormai è molto usabile anche
 su mac!

 --
 Antonio Valente



 ed inoltre sotto macosx non è che le qt siano molto meglio e
 installarle sotto leopard è un miraggio (pyqt)!!!

Dipende dalla dimensione di molto ;-)
Sono abbastanza meglio..un confronto al volo: pgadmin3 (wx) e mysql  
tools (qt), il secondo è nettamente più stile mac. Non saprei però  
quanto impegno ci vuole per creare un lf maccoso con le qt. Certo  
è che, ad esempio, il cassettino laterale con le wx non si può fare  
(per quanto ne so) attualmente. Ma continuo ad essere convinto che  
sia solo una questione di tempo!

--
Antonio Valente


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


Re: [Python] strano problema conversione string to list

2007-11-26 Per discussione Y3s

Il giorno 26/nov/07, alle ore 20:28, Mr.SpOOn ha scritto:

 Salve,

 ho creato una funzione per convertire una stringa in una lista, così:

 def stringToList(stringa):
 l = []
 print stringa
 for i in stringa:
 print i
 l.append(i)
 return l

list(stringa) non ti piace? :-)

In [2]: list(ciao)
Out[2]: ['c', 'i', 'a', 'o']


 La stringa in input viene presa da un wx.TextCtrl, in questo modo:

CUT

 [u'c', u'i', u'a', u'o']

 Non riesco a spiegarmi quelle u prima di ogni carattere nella lista.
 Ho provato la funzione di conversione da sola, e funziona. Qualche
 idea su cosa possa essere la causa di quelle u?

Le u indicano che le stringhe sono unicode, evidentemente hai la  
versione unicode di wxPython:

In [3]: unicode(ciao)
Out[3]: u'ciao'

In [4]: list(uciao)
Out[4]: [u'c', u'i', u'a', u'o']

Ti consiglio di leggere un po'di documentazione per quanto riguarda  
stringhe ascii e unicode :-)

Ciao

--
Antonio Valente


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


Re: [Python] Dubbi organizzazione progetto

2007-11-25 Per discussione Y3s

Il giorno 24/nov/07, alle ore 20:19, Mr.SpOOn ha scritto:

CUT

 Nel programma la classe Trasmittente dovrebbe inviare un messaggio che
 passa per il rumore e arriva al ricevente per essere mostrato
 nuovamente su schermo.

Cosa intendi con passa per il rumore?

 Mi chiedevo quale sia la scelta più logica ed efficace. Per esempio,
 per la trasmittente ho fatto una classe contenente alcuni metodi che
 vengono chiamati da eventi generati nel box Trasmittente.

 Mentre dal box rumore devo solo leggere dei parametri numerici da  
 un wx.Slider.
 Mi chiedevo quindi se convenisse fare una classe apposita definita
 come sottoclasse di StaticBox.

Non ho ben capito la tua esigenza e il tuo dubbio :-)
Comunque, se ho capito bene, quello che ti serve è un tuo oggetto che  
contiene una serie di widget, da poter istanziare in un colpo solo  
e riutilizzare, giusto? Se è così, crei una classe derivata da  
wx.Panel, nel suo __init__ costruisci i suoi figli (quindi staticbox,  
sliders  company), e poi te lo dimentichi (nel senso che ogni volta  
che ti serve devi solo fare un mio_panel = MioPanel 
(self.panel, ..parametri..))

 Su questo punto sono particolarmente confuso. Anche perché, nel
 progetto finito, volevo dare la possibilità di creare altri gruppi di
 questi 3 box insieme. Per far ciò, quindi, ho pensato che sarebbe
 necessario avere un unico oggetto che all'interno contenga i 3 box. E'
 una giornata che cerco di venirne a capo, ma penso di aver solo fatto
 confusione.

Se ho capito il problema, la risposta è su, altrimenti spiega meglio  
per favore :-)


 Grazie,
 Carlo

Ciao

--
Antonio Valente


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


Re: [Python] Dubbi organizzazione progetto

2007-11-25 Per discussione Y3s

Il giorno 25/nov/07, alle ore 13:28, Mr.SpOOn ha scritto:

 On Nov 25, 2007 12:41 PM, Y3s [EMAIL PROTECTED] wrote:
 Cosa intendi con passa per il rumore?

 Eheh, ho cercato di evitare i dettagli per non dilungarmi troppo, ma
 forse ho solo fatto più confusione.

 Ho tre oggetti principali che ho voluto dividere in 3 staticbox:
 1) Trasmittente: ha  dei campi di testo e dei wxChoices e qualche
 bottone per confermare le varie operazioni. Si inserisce un testo,
 viene codificato in base a quanto specificato nei menu a tendina e fa
 partire il messaggio.

 2) Rumore: il messaggio deve passare da qui. In questo box c'è
 semplicemente uno slider che definisce la quantità di rumore.

 3) Ricevente: ci sono dei campi di testo nei quali apparirà il
 messaggio nuovamente decodificato.

Prima di tutto, ti consiglio di dividere la logica applicativa  
dall'interfaccia utente, e di non confondere le due cose. Per  
applicazioni semplici spesso non c'è bisogno di ricorrere a modelli  
tipo MVC, ma è comunque importante separare la logica applicativa  
dalla GUI.

 Non ho ben capito la tua esigenza e il tuo dubbio :-)
 Comunque, se ho capito bene, quello che ti serve è un tuo oggetto che
 contiene una serie di widget, da poter istanziare in un colpo solo
 e riutilizzare, giusto?
 Se è così, crei una classe derivata da
 wx.Panel, nel suo __init__ costruisci i suoi figli (quindi staticbox,
 sliders  company), e poi te lo dimentichi (nel senso che ogni volta
 che ti serve devi solo fare un mio_panel = MioPanel
 (self.panel, ..parametri..))

 Sì, su questo più o meno ci sono. Il problema ce l'ho negli elementi
 più interni.
 Ad esempio per il rumore non avevo fatto una classe separata, ma
 semplicemente un metodo che generasse qualcosa di casuale basandosi
 sul valore dello slider. Il fatto è che dovrebbe leggere questo valore
 da qualche parte e mi sembra che l'unica soluzione sia:

Secondo me stai mischiando l'interfaccia a quello che il programma  
deve effettivamente fare.


 - o l'utilizzo di una variabile globale
 - o creare una classe rumore con i propri event handler etc.

 Sbaglio o la soluzione è più semplice di quanto non la stia facendo  
 io?
 Considerate le due scelte, mi sembrava che una classe apposita fosse
 meglio. In questo modo avrei fatto anche una classe Trasmittente e una
 Ricevente, ognuna con i propri metodi etc.

Fermo restando quanto ho scritto sopra, io procederei così:
- Da qualche parte c'è una funzione (o un metodo di una classe) che  
esegue effettivamente il lavoro, prendendo in ingresso i parametri di  
cui necessita (o prendendoli dallo stato dell'oggetto a cui  
appartiene, se è un metodo)
- Avrai un pulsante in quello che tu chiami Trasmittente (o  
comunque qualcosa da attivare per far si che il lavoro sia eseguito).  
Quando viene premuto questo pulsante (o quello che è), vengono  
raccolti tutti i dati dall'interfaccia (incluso il valore del  
rumore) e viene chiamata la funzione di cui sopra, utilizzando tali  
parametri. La funzione restituisce il/i valori, i quali vengono poi  
inseriti nei campi di quello che tu chiami Ricevente. Naturalmente  
se c'è bisogno di mantenere stato puoi anche utilizzare un oggetto al  
posto della funzione e leggerne lo stato piuttosto che utilizzare il  
valore di ritorno della funzione, questi sono dettagli che valuterai tu.


 Prendendo per buona questa decisione, non capisco bene come creare
 queste classi. Ho pensato che dovessero essere sottoclassi di
 StaticBox, tipo così:

Lo staticbox è semplicemente quel piccolo bordino, in genere va  
utilizzato così com'è. A te serve un container, devi ereditare da  
wx.Panel.


 class Trasmittente(wx.StaticBox):
 def __init__(self.panel, -1, Trasmittente):
 ...
 ...

 Lo stesso farei per Rumore e Ricevente.
 Il punto è che non ho capito bene la relazione fra gli StaticBox e gli
 StaticBoxerSizer. Seguendo l'esempio del libro l'interfaccia l'ho
 creata correttamente, a adesso mi blocco invece. Forse Trasmittente
 dovrebbe essere sottoclasse di StaticBoxSizer?

Lo staticboxsizer non è altro che un boxsizer che gestisce  
automaticamente uno staticbox. Un sizer è un oggetto che gestisce il  
posizionamento e il dimensionamento degli elementi in un container in  
modo prestabilito. Il BoxSizer in particolare posiziona tutti gli  
oggetti che gestisce uno dopo l'altro, in orizzontale o in verticale.  
Uno StaticBoxSizer è esattamente uguale a un normale BoxSizer, solo  
che ti permette di associargli uno staticbox, per cui vedi il bordino  
arrotondato intorno..è un oggetto puramente estetico. Quello che a te  
serve è solo un Panel a cui vai ad associare il sizer che più ti  
conviene.


 Spero di essere stato un po' più chiaro stavolta :\


 grazie ancora, ciao :D

Spero di aver risposto alla tua domanda :-)

--
Antonio Valente


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


Re: [Python] lavorare con più classi

2007-11-18 Per discussione Y3s


Il giorno 18/nov/07, alle ore 13:10, Mr.SpOOn ha scritto:


Salve,
utilizzo Python da poco e (forse purtroppo) sono stato fin troppo
abituato a programmare con Java. Ho sempre il pensiero di dover
mettere ogni classe in un file separato.


N :-)



Mi chiedevo se in python fosse necessario farlo o se è comunque una
buona pratica, nonostante non sia necessaria.


Non è necessario e non è una buona pratica in generale. Python non  
forza il programmatore a seguire uno stile particolare, però si  
preferisce inserire nello stesso file sorgente classi, funzioni e  
costanti appartenenti allo stesso dominio logico. Se poi il file  
cresce troppo, ci sono i package...




A parte questo, nelle varie prove che sto facendo incontro qualche
problema nell'accedere alle classe e ai metodi.
Ad esempio, ho messo due classi in un unico file e avrei bisogno di
utilizzare un metodo della seconda classe all'interno di un metodo
della prima.

Ad esempio:

class ClasseA:
   def metodoA(self, messaggio)
   b = ClasseB()
   b.stampa(messaggio)

class ClasseB:
   def stampa(self, messaggio)
   print messaggio


Ho cercato di ricreare più o meno la mia situazione. L'errore che  
ricevo è:


NameError: global name 'ClasseB' is not defined

Dove sbaglio?


Così com'è deve funzionare. Se stanno nello stesso modulo. Verifica i  
nomi...se non trova il nome ClasseB, vale a dire che o il nome è  
sbagliato oppure non sta nel namespace del modulo di ClasseA (oppure  
sono state fatte schifezze varie tipo del ClasseB, o altro ma non  
credo :-) )


Ciao

--
Antonio Valente


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


Re: [Python] lavorare con più classi

2007-11-18 Per discussione Y3s


Il giorno 18/nov/07, alle ore 14:38, Mr.SpOOn ha scritto:


On Nov 18, 2007 1:31 PM, Y3s [EMAIL PROTECTED] wrote:

Così com'è deve funzionare. Se stanno nello stesso modulo. Verifica i
nomi...


Ho risolto. Nella classe avevo usato il trucchetto:

if __name__ == main

però avevo inserito ClasseB dopo il blocco if. Immagino quindi che non
la vedesse per questo.


Si, infatti: in quel modo il nome ClasseB viene definito nell'if e  
non nel namespace del modulo, quindi fuori dall'if quel nome non  
esiste più, da qui l'errore.


--
Antonio Valente


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


Re: [Python] Problema con Tkinter ma più in gen erale con le classi

2007-11-16 Per discussione Y3s


Il giorno 16/nov/07, alle ore 09:20, Pietro Battiston ha scritto:

Salve a tutti.  Dal basso della mia scarsa esperienza con gli  
oggetti, ho un problema forse banale ma che si scontra da un paio  
di giorni con tutto quello che ho sempre pensato sulle classi.


Il problema è riprodotto nel seguente codice:

###
import Tkinter

class finestra(Tkinter.Toplevel):
   def __init__(self):
  self=Tkinter.Tk()#Il mio oggetto instanziato lo  
voglio identico ad una finestra toplevel classica...
  self.stringa=testo   #... tranne che ci voglio  
aggiungere i metodi e gli attributi che mi servono


Forse non ti è chiaro il modo in cui funzionano gli assegnamenti in  
python. In quel modo assegni al nome self locale alla funzione un  
oggetto. Ma non stai modificando l'oggetto stesso! Per fare quello  
che vuoi, devi utilizzare il __new__ in un modo simile a questo (non  
testato):


class Finestra(Tkinter.Toplevel):
def __new__(cls):
oggetto = Tkinter.Tk()
oggetto.stringa = testo
return oggetto

Questo supponendo che Tkinter.Tk() restituisca un valore di tipo  
Tkinter.Toplevel (non conosco tkinter)


Ho provato a ragionarci un po'... ma se la classe Toplevel  
(ovviamente ho verificato nella docstring che Tkinter.Tk Return a  
new Toplevel widget...) non ha di per sé il metodo update, come  
può essergli aggiunto dalla funzione Tk?! Un metodo non può essere  
aggiunto ad un'istanza solo aggiungendolo alla sua classe?! E se  
anche non fosse così, e in realtà Tkinter.Tk() avesse qualche modo  
magico di aggiungere metodi, perché questi metodi non si vedono  
dall'esterno della classe finestra?




No, un metodo può essere aggiunto anche a una singola istanza.





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


--
Antonio Valente


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


Re: [Python] Spostare files

2007-11-03 Per discussione Y3s


Il giorno 03/nov/07, alle ore 13:44, Alberto ha scritto:

Salve a tutti,vorrei sapere se esiste un comando per spostare un  
file da una directory ad un'altra.




http://python.it/doc/Python-Docs/html/lib/module-shutil.html

--
Antonio Valente


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


Re: [Python] portabilità dell'applicazione scri tta in python

2007-10-02 Per discussione Y3s


Il giorno 02/ott/07, alle ore 17:27, DANIELE GHEREMEDIN ha scritto:

Salve, ho sviluppato un applicativo in Python, ma lo posso far  
girare solo su macchine in cui è installato l’interprete Python.  
Come posso far girare il mio applicativo anche su macchine che non  
abbiano installato Pyhton?
Utilizzando uno dei vari strumenti di freezing. Dipende anche dalla  
piattaforma, ti cito qualche nome dei più famosi, una breve ricerca  
con google per i dettagli:


py2exe (windows)
py2app (mac osx)
cx_Freeze (windows e linux)
pyInstaller (windows e linux)

Ciao

--
Antonio Valente


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


Re: R: R: [Python] portabilità dell'applicazion e scritta in python

2007-10-02 Per discussione Y3s


Il giorno 02/ott/07, alle ore 20:04, Daniele Gheremedin ha scritto:


Okay mi fermo all’eseguibile.



Ma quindi l’eseguibile, incorporando anche la VM Python, sarà più  
grande in byte?


http://wiki.news.nic.it/QuotarBene

Dipende dallo strumento e dalle opzioni. C'è la possibilità di creare  
un .exe contenente qualunque cosa, e naturalmente la dimensione  
diventa notevole, soprattutto se usi interfacce grafiche: un  
eseguibile medio con wxPython o PyGTK e poco altro supera  
abbondantemente i 5 mb, ma nemmeno tanto per gli standard di oggi,  
soprattutto tenendo conto che contiene *tutto* ciò che serve, senza  
necessità di installare librerie esterne. Quasi tutti i tools offrono  
comunque anche la possibilità di creare un file .exe di poche decine  
di KB, affiancato da varie librerie e dagli altri files necessari. La  
dimensione è più o meno invariata, ma invece di un grande file, viene  
generata una directory contenente i vari files necessari. E' solo una  
questione di deploy e di gusti. Ma ti conviene andare a guardare  
sulle pagine dei vari tools...


Ciao

--
Antonio Valente


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


Re: R: R: R: [Python] portabilità dell'applicaz ione scritta in python

2007-10-02 Per discussione Y3s


Il giorno 02/ott/07, alle ore 20:19, Daniele Gheremedin ha scritto:

Ho qui sotto mano pyinstaller ma mi spieghi un pò la filosofia in  
modo da velocizzare il processo?


Comunque sono 14 kB di script.

Ho eseguito la McGui ed ho caricato il file ma poi devo inserire un  
file txt dove riservo i dati da che carica l’applicativo, come fare?


Quota nel modo corretto, per favore!

Comunque, ti conviene leggere la documentazione, fai prima!

http://pyinstaller.hpcf.upr.edu/docs/Manual_v1.1.html

Ci sono le risposte a tutte le tue domande!

--
Antonio Valente


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


Re: R: R: R: R: [Python] portabilità dell'appli cazione scritta in python

2007-10-02 Per discussione Y3s


Il giorno 02/ott/07, alle ore 20:33, Daniele Gheremedin ha scritto:


È tutta in inglese

Quota bene, per favore. Leggi: http://wiki.news.nic.it/QuotarBene

In secondo luogo, se non conosci almeno un po'di inglese tecnico, è  
molto difficile riuscire a fare il programmatore!


Comunque:
http://pylab.altervista.org/ 
creare_un_unico_eseguibile_con_pyinstaller.html


Ciao

--
Antonio Valente


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


Re: [Python] next record in mysqldb

2007-10-01 Per discussione Y3s


Il giorno 01/ott/07, alle ore 11:44, Paolo Amodio ha scritto:


Buon giorno a tutti.
Una breve domanda.
Eseguita una query e ritornati i risultati ho la necessità di  
avanzare, o retrocedere, di un record (i risultati popolano dei  
campi in wxPython).
Attualmente e per il momento ho creato una funzione che, ricevuto  
il valore attuale del record (in realtà del campo ID), effettua una  
nuova query.

Il sistema mi sembra macchinoso.
Esiste qualche cosa di migliore?


Retrocedere, nel caso generale non puoi. Poi qualche modulo potrebbe  
anche implementare un cursore a doppio senso, ma non credo sia  
standard dbapi2. Dovresti quindi implementare la funzionalità da te,  
ed hai (almeno) due strade:
1) Incapsulare l'intero recordset in una classe dotata dei metodi per  
andare avanti e indietro
2) Incapsulare la logica in una classe in modo da eseguire query per  
prendere il record precedente / successivo, magari implementando  
anche un meccanismo di cache.


La prima soluzione è rapida, veloce e semplice, ma ha (sempre almeno)  
due gravi controindicazioni:

- Per recordset molto grandi, mangia un sacco di RAM
- Per tabelle molto movimentate, rischi di considerare un record  
vecchio, oppure record fantasmi. In definitiva, rischi di non essere  
sincronizzato con il DB.


La seconda soluzione è più flessibile, ma ha come difetto che esegue  
un gran numero di query (una per ogni avanzamento/retrocessione).  
Tramite meccanismi di cache puoi limitare questo problema (ad esempio  
caricare n record prima e dopo il corrente, in modo da averli già  
disponibili, senza dover eseguire una query).
Naturalmente se scegli una strada simile, non devi caricare ogni  
volta tutti i records, ma solo quello/i di cui hai bisogno. Qualcosa  
di simile, supponendo che la PK della tabella sia una column intera  
di nome id:


class FlexibleRecordSet(object):
def __init__(self):
self.current_id = 0

def get_first(self):
query = SELECT * FROM mytable WHERE id = (SELECT MIN(id)  
FROM mytable)
... esegui la query, supponendo di avere in row la riga  
risultante ...

self.current_id = row['id']

def get_next(self):
query = SELECT * FROM mytable WHERE id = (SELECT MIN(id)  
FROM mytable WHERE id  ?)


Qualcosa del genere, gestendo bene le condizioni di errore, i casi  
limite, ecc, può essere una soluzione flessibile.
Naturalmente ci saranno anche altre vie, tutto sta nel capire qual'è  
la soluzione più adatta nel tuo specifico caso.


Ciao

--
Antonio Valente


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


Re: [Python] info applicazione

2007-09-22 Per discussione Y3s


Il giorno 22/set/07, alle ore 23:05, Mr.SpOOn ha scritto:


Salve,
dovrei creare un'applicazione che simuli il funzionamento di un
sistema di comunicazioni.


CUT


Non essendo per nulla pratica volevo sapere in anticipo se potrei
avere qualche problema, non so, nella gestione di un semplice file xml
o nella creazione di un'interfaccia.


Nessun problema, xml è supportato sia dalla libreria standard che da  
numerose librerie esterne, in ogni salsa! Per l'interfaccia idem,  
python supporta i principali toolkits per GUI, a meno che non vuoi  
creare un'interfaccia web, visto che parlavi di flash. Nel primo  
caso, nei vecchi post di questa ML e del newsgroup  
it.comp.lang.python trovi discussioni a bizzeffe, nel secondo caso  
non credo che avrai problemi visto che probabilmente vorrai usare  
html/xhtml!




Inoltre, io preferirei lavorare su linux, ma l'applicazione dovrebbe
essere più o meno cross-platform, o quanto meno, visto che deve girare
sul computer del mio prof, dovrebbe essere almeno compatibile con
windows. E' un problema creare un'interfaccia grafica su Linux che poi
funzioni bene anche su windows?


Nessun problema, python è multipiattaforma, come anche i principali  
toolkit GUI. Tkinter è integrato nella libreria standard, non devi  
neppure installare roba a parte...



Un'ultima cosa: finora ho fatto delle prove semplicemente usando la
shell o caricando giusto qualche breve script da file di testo. Esiste
qualche IDE che potreste consigliarmi?


Ognuno ti consiglierà lo strumento con cui si trova meglio: è una  
questione altamente personale, ti conviene cercare nei vecchi post e  
poi provarne qualcuno finchè non trovi quello giusto per te. Comunque  
in python spesso non è necessario un IDE, ma è sufficiente un buon  
editor con funzionalità avanzate: moltissimi usano emacs, textmate  
(su macosx), vim (in rigoroso ordine alfabetico!) o strumenti simili.  
Se già utilizzi uno di questi ti conviene probabilmente utilizzarlo  
anche per python, mentre se stai cominciando potresti anche  
utilizzare IDLE, incluso di default nelle distribuzioni di python...


--
Antonio Valente


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


Re: [Python] Re: migrazione da msaccess a python

2007-09-07 Per discussione Y3s


Il giorno 07/set/07, alle ore 15:26, Enrico Franchi ha scritto:



On 07/set/07, at 14:54, Manlio Perillo wrote:

Si, è una delle ragioni per cui mi interessa Firebird in modalità  
embedded: non riesco proprio
fare a meno di usare l'integrità referenziale (e simulare la cosa  
usando i trigger è abbastanza scomodo).


Eh, dillo a me. Tra l'altro quella che devo fare è ora, nel mentre  
che finisco la tesi, è una strünzata.

Dico, se ci fosse già fatta penserei a usarla e basta.

Di per se ho anche vagliato (brevemente) di non farla in Python ma  
con un RAD horribilis, constatanto peraltro che ci avrei messo di più.
Che con SQLalchemy dovrei avere di default il 95% di behaviour  
utile, ammesso di avere l'integrità referenziale da db.
Poi a sto punto devo solo decidermi a scrivere una piccola libreria  
che mi tira fuori maschere gui e 'liste/tabelle' gui a partire  
dalle definizioni del db/sqlalchemy/model o cosa e basta.


Mappi 1:1 tabelle-classi?

--
Antonio Valente


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


Re: [Python] Re: migrazione da msaccess a python

2007-09-07 Per discussione Y3s


Il giorno 07/set/07, alle ore 14:45, Carlo C8E Miron ha scritto:


On 9/7/07, Enrico Franchi [EMAIL PROTECTED] wrote:

On 07/set/07, at 14:05, Carlo C8E Miron wrote:

Scusa Enrico, non credo di aver capito. Cosa intendi?

s/righe/colonne/
intendevo che, per l'appunto, una tabella con un migliaio di colonne
non riesco a figurarmela.
un migliaio di righe invece è banale. sigh.
-enrico


Non hai fatto molto ETL, allora, per tua fortuna ;P
http://it.wikipedia.org/wiki/Extract%2C_transform%2C_load
E` uso diffuso quello di importare i dati in forma denormalizzata
(aka tabellone piatto) in un area di staging, e processare da li`.


Vabbè ma le tabelle poi mica le usi tu direttamente! :-)
In effetti mi ero scordato di questo uso, effettivamente in alcuni  
ambiti è importante che si possano usare tante colonne!



Io ho cozzato diverse volte con il limite di Or*cle (~250 righe), p.e.


Sempre colonne eh? ;-)

--
Antonio Valente


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


Re: [Python] Re: migrazione da msaccess a python

2007-09-07 Per discussione Y3s


Il giorno 07/set/07, alle ore 14:37, Enrico Franchi ha scritto:



On 07/set/07, at 14:05, Y3s wrote:


Di colonne intendevi?


Si, chiaramente. Lapsus teribbilus.


Il massimo che ho visto era una tabella con poco più di un centinaio  
di colonne. E già era piuttosto ingestibile. E progettata malissimo,  
da rifattorizzare immediatamente...chi può avere realmente bisogno di  
una tabella con migliaia di colonne?!?



--
Antonio Valente


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


Re: [Python] Re: migrazione da msaccess a python

2007-09-07 Per discussione Y3s


Il giorno 07/set/07, alle ore 13:59, Enrico Franchi ha scritto:



On 07/set/07, at 02:46, [EMAIL PROTECTED] wrote:

Con il commento riguardo al fatto che se hai bisogno di BLOB da  
32GB (!!) e` meglio usare firebird... Ma chi ha bisogno di BLOB da  
32 GB? Anzi peggio, chi e` cosi` matto da considerare una cosa del  
genere come utile?


In realtà quasi tutti i limiti mi sono sembrati abbastanza  
irrilevantemente teorici. Cioè, che io non ho mai visto una tabella  
con un migliaio di righe.
Anche perchè non ho idea di come scalerebbe. Ma poi che problema è  
risolvibile tramite una tabella da un migliaio di righe?


Di colonne intendevi?

--
Antonio Valente


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


Re: [Python] Re: migrazione da msaccess a python

2007-09-07 Per discussione Y3s


Il giorno 07/set/07, alle ore 19:06, [EMAIL PROTECTED] ha scritto:



On 11:59 am, [EMAIL PROTECTED] wrote:
In realtà quasi tutti i limiti mi sono sembrati abbastanza  
irrilevantemente teorici. Cioè, che io non ho mai visto una  
tabella con un migliaio di righe.
Anche perchè non ho idea di come scalerebbe. Ma poi che problema è  
risolvibile tramite una tabella da un migliaio di righe?


Beh no, questo e` decisamente un problema piu` normale. Gia` solo  
gli utenti
di digg o youtube o, quando lo rilasceremo, adroll.com (messaggio  
promozionale), finisce per essere piu` grossa di qualche migliaio.


Diciamo che molte delle tabelle che abbiamo nel nostro database  
finisce per essere alla lunga davvero enorme (statistiche  
giornaliere, settimanali, mensili su cose differenti).


Enorme in lunghezza o larghezza? No, perchè c'è un po'di  
confusione oggi :-)


--
Antonio Valente


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


Re: [Python] Webware o Django?

2007-09-05 Per discussione Y3s


Il giorno 05/set/07, alle ore 21:41, Manlio Perillo ha scritto:


Enrico 'Henryx' Bianchi ha scritto:

On Monday 03 September 2007 09:10, Lawrence Oluyede wrote:

- database mysql

ok

Mmm... qui c'e` qualcosa che non va...


Devo cominciare a mettere un filtro per eliminare tutti i messaggi  
che parlano di mysql? :)


Ogni volta si finisce con un principio di flame...



Così però ti schiereresti dalla parte di quelli che non sopportano  
m**ql (così ho evitato pure il filtro :-) )



--
Antonio Valente


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


Re: [Python] migrazione da msaccess a python

2007-08-30 Per discussione Y3s


Il giorno 30/ago/07, alle ore 13:03, Marco ha scritto:

Ciao sto anche io facendo un lavoro del genere per la mia azienda  
ma non è affatto facile.
Per quanto access sia una schifezza, come dicono tanti,  permette  
personalizzazioni molto veloci a livello di query o report.
Python al contrario ti permetterà sicuramente una maggiore  e una  
migliore gestione a livello di linguaggio e di sicurezza dei dati,  
indipendentemente se ti basi su mysql o altri.
Se però ti chiedono una qry al volo o un report  non ci metterei  
senz'altro i 10 min che ci mettevi prima a crearlo dal  nulla.


Non sono per niente d'accordo, anzi in python (avendo strutturato  
bene il tutto) è ancora più semplice. Apri il file (file di testo,  
che puoi aprire in situazioni di emergenza con notepad), scrivi la  
query, la associ al pulsante, menu o quello che è ed è fatto. Per i  
report, al momento in effetti strumenti comodi non ce ne sono ma  
idem, se hai creato un'infrastruttura ben fatta (ad esempio dei  
template per reportlab), non ci vorranno 10 minuti, ma in 15 hai  
fatto...ed è un lavoro molto più pulito e stabile direi!


Per l'interfaccia grafica anche io di consiglio le wxpython, per la  
creazione in grafica dell'interfaccia se non vuoi scrivere il  
codice a manina però non so ancora cosa dirti .
Ci sono diversi strumenti disponibili ma molti come me preferisco  
scrivere per quanto lungo il codice a mano. (aspetto contraddizioni  
o consiglio in merito)


Penso che questa sia una questione molto personale, ognuno dovrebbe  
scegliere il metodo con cui si trova meglio, non esiste un migliore  
in assoluto! Io mi trovo abbastanza bene a scrivermi il codice a  
mano, anche perchè mi sono creato un piccolo set di controlli che mi  
semplificano molto la vita, e utilizzando un designer avrei molte  
difficoltà ad integrarli...


Riguardo l'accesso ai vari db  in python trovi di tutto e per tutto  
e sicuramente non avrai problemi.
Per i report in ho ancora trovato nulla che sia altrettanto veloce  
di access. Io attualmente uso reportlab che è uno strumento ottimo  
che ti crea il pdf dei report che vuoi  ma non ho ancora trovato  
nulla  per creare i report i grafica.
I report li creo ancora scrivendo il codice.sigh, ( anche qui se ci  
sono consigli o contraddizioni sono a braccia aperte)


C'è questo, ma è praticamente solo per windows (o almeno, non sono  
mai riuscito a farlo funzionare decentemente su linux), comunque  
molto comodo e abb potente:

http://reportman.sourceforge.net/

Oppure c'è questo, che però non ho mai provato, ma per quanto ne so  
dovrebbe esistere uno strumento per creare un report RML con openoffice:

http://www.openreport.org/

C'è qualcos'altro che però al momento non ricordo...
Poi se lavori su windows c'è sempre la possibilità di usare  
crystalreports, e infine penso che sia possibile in qualche modo  
anche utilizzare jasperreports con il suo editor iReport...


--
Antonio Valente


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


Re: [Python] migrazione da msaccess a python

2007-08-30 Per discussione Y3s


Il giorno 30/ago/07, alle ore 15:17, Daniele Varrazzo ha scritto:




On Thu, 30 Aug 2007 13:32:09 +0200, Y3s [EMAIL PROTECTED] wrote:


Il giorno 30/ago/07, alle ore 13:03, Marco ha scritto:


Ciao sto anche io facendo un lavoro del genere per la mia azienda
ma non è affatto facile.
Per quanto access sia una schifezza, come dicono tanti,  permette
personalizzazioni molto veloci a livello di query o report.
Python al contrario ti permetterà sicuramente una maggiore  e una
migliore gestione a livello di linguaggio e di sicurezza dei dati,
indipendentemente se ti basi su mysql o altri.
Se però ti chiedono una qry al volo o un report  non ci metterei
senz'altro i 10 min che ci mettevi prima a crearlo dal  nulla.


Non sono per niente d'accordo, anzi in python (avendo strutturato
bene il tutto) è ancora più semplice. Apri il file (file di testo,
che puoi aprire in situazioni di emergenza con notepad), scrivi la
query, la associ al pulsante, menu o quello che è ed è fatto. Per i
report, al momento in effetti strumenti comodi non ce ne sono ma
idem, se hai creato un'infrastruttura ben fatta (ad esempio dei
template per reportlab), non ci vorranno 10 minuti, ma in 15 hai
fatto...ed è un lavoro molto più pulito e stabile direi!


Tu come li fai i template in reportlab?



Per template intendevo un modello. In genere le tipologie di  
report che si usano in un'applicazione sono poche. Una volta che hai  
coperto in modo per te soddisfacente i casi che ti interessano, è  
rapido e veloce modificare la classe, la funzione, o qualunque cosa  
usi per generare l'output per adattarla al nuovo report.


Io ho avuto successo solo usando una versione patchottata di un  
parser RML

bootleg che trovai abbandonato da qualche parte nel web (per avere
RML2PDF devi comprare il ReportLab Enterprise Publishing and  
Reporting
Server... e il nome dice tutto su quanto te lo vogliono far  
pagare), e

anche allora quello che ho avuto è stato un linguaggio per fare *i
report*, non *i template*: questi ultimi me li sono fatti con  
Cheetah che
genera RML che genera PDF - un altro strato di roba da imparare.  
Alla fine
va, ma è veramente un hack che non me la sentirei di consigliare a  
cuor

leggero.

Hai una soluzione più pulita di questa? Sarei felice di conoscerla. Se
no... direi che promettere a qualcuno che farà report non in 10  
minuti ma

in 15 sì mi sembra un po' grossa.



Al momento no, ma ci sto lavorando. Purtroppo il tempo è sempre poco.
C'è openreport (o comunuque si chiami, non ricordo, comunque quello  
che usa tinyERP) che più o meno dovrebbe fare quello che fai tu, ma  
in modo un po'più integrato.
Comunque, si parlava di query al volo o report, quindi davo per  
scontato che il grosso del lavoro sia già stato fatto. In tal caso,  
non ci vuole molto ad adattare un report che già hai per creare  
qualcosa di nuovo che, ripeto, nel 90% dei casi sarà molto simile  
come struttura a uno che già hai. Inoltre, ho specificato che *avendo  
strutturato bene l'applicazione* e *avendo creato un'infrastruttura  
adeguata* la modifica al volo è un'operazione semplice e rapida,  
certo partendo da zero il tempo necessario è maggiore...almeno  
all'inizio, visto che molto del codice che vai a scrivere la prima  
volta, lo riutilizzerai quasi sicuramente le volte successive...


Access è ottimale per una certa classe di applicazioni: se (e solo  
se) si
è ossequiosi verso il suo paradigma, consente di fare applicativi -  
male -
ma velocemente. In Python le cose si possono fare bene, si è liberi  
sul

paradigma di accesso ai dati, si possono fare anche certe cose
velocemente... ma non le stesse che si fanno con Access altrettanto
velocemente.



Se l'obiettivo è avere un'applicazione che funziona in poco tempo, se  
non si è interessati alla qualità del codice, se non ci si preoccupa  
troppo della manutenzione e dell'espandibilità, se si vuole correre  
il rischio che con la nuova versione dell'applicativo il tuo  
programma non funzioni più, allora si, Access è un ottimo strumento.  
Troppi se per i miei gusti, ma...
Io continuo a pensare che una volta che ti sei costruito un insieme  
di moduli adatti alle tue esigenze, sviluppare in python non è molto  
più lento che farlo con access o altro. Il grosso del tempo lo perdi  
solo una volta. Ovviamente è una mia opinione, eh!



--
Antonio Valente


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


Re: [Python] migrazione da msaccess a python

2007-08-30 Per discussione Y3s


Il giorno 30/ago/07, alle ore 16:18, Daniele Varrazzo ha scritto:




On Thu, 30 Aug 2007 15:41:15 +0200, Y3s [EMAIL PROTECTED] wrote:


Il giorno 30/ago/07, alle ore 15:17, Daniele Varrazzo ha scritto:




On Thu, 30 Aug 2007 13:32:09 +0200, Y3s [EMAIL PROTECTED] wrote:


Il giorno 30/ago/07, alle ore 13:03, Marco ha scritto:


Ciao sto anche io facendo un lavoro del genere per la mia azienda
ma non è affatto facile.
Per quanto access sia una schifezza, come dicono tanti,  permette
personalizzazioni molto veloci a livello di query o report.
Python al contrario ti permetterà sicuramente una maggiore  e una
migliore gestione a livello di linguaggio e di sicurezza dei dati,
indipendentemente se ti basi su mysql o altri.
Se però ti chiedono una qry al volo o un report  non ci metterei
senz'altro i 10 min che ci mettevi prima a crearlo dal  nulla.


Non sono per niente d'accordo, anzi in python (avendo strutturato
bene il tutto) è ancora più semplice. Apri il file (file di testo,
che puoi aprire in situazioni di emergenza con notepad), scrivi la
query, la associ al pulsante, menu o quello che è ed è fatto. Per i
report, al momento in effetti strumenti comodi non ce ne sono ma
idem, se hai creato un'infrastruttura ben fatta (ad esempio dei
template per reportlab), non ci vorranno 10 minuti, ma in 15 hai
fatto...ed è un lavoro molto più pulito e stabile direi!


Tu come li fai i template in reportlab?



Per template intendevo un modello. In genere le tipologie di
report che si usano in un'applicazione sono poche. Una volta che hai
coperto in modo per te soddisfacente i casi che ti interessano, è
rapido e veloce modificare la classe, la funzione, o qualunque cosa
usi per generare l'output per adattarla al nuovo report.


Ok, quindi devi comunque scrivere codice per avere un template. Questo
rende i template non disponibili a chi non sa programmare.


Si. Però dal mio punto di vista questo non è un reale problema visto  
che nella mia (limitata, d'accordo, ma condivisa da diversi colleghi)  
esperienza, ci si rivolge *sempre e comunque* allo sviluppatore, in  
ogni caso, anche se l'utente finale (o l'eventuale concessionario) ha  
gli strumenti per personalizzarsi qualcosa. Sarà che il livello di  
informatizzazione qui al sud è molto basso, mentre quello di  
scansafaticaggine/paraculaggine è MLTO alto, ma *tutti* quelli  
che conosco che fanno questo mestiere hanno esperienze analoghe.  
Comunque oggettivamente questo è un problema, ok.





Io ho avuto successo solo usando una versione patchottata di un
parser RML
bootleg che trovai abbandonato da qualche parte nel web (per avere
RML2PDF devi comprare il ReportLab Enterprise Publishing and
Reporting
Server... e il nome dice tutto su quanto te lo vogliono far
pagare), e
anche allora quello che ho avuto è stato un linguaggio per fare *i
report*, non *i template*: questi ultimi me li sono fatti con
Cheetah che
genera RML che genera PDF - un altro strato di roba da imparare.
Alla fine
va, ma è veramente un hack che non me la sentirei di consigliare a
cuor
leggero.

Hai una soluzione più pulita di questa? Sarei felice di  
conoscerla. Se

no... direi che promettere a qualcuno che farà report non in 10
minuti ma
in 15 sì mi sembra un po' grossa.



Al momento no, ma ci sto lavorando. Purtroppo il tempo è sempre poco.
C'è openreport (o comunuque si chiami, non ricordo, comunque quello
che usa tinyERP) che più o meno dovrebbe fare quello che fai tu, ma
in modo un po'più integrato.


E' *quello* il bootleg di rml2pdf che ho usato :) ed è quello che ho
dovuto integrare con un sistema di templating mio. Per la cronaca, la
homepage è andata, il progetto ritirato da freshmeat e se ne possono
trovare le macerie solo nella cache di google.



Intendi questa?
http://www.openreport.org/


Comunque, si parlava di query al volo o report, quindi davo per
scontato che il grosso del lavoro sia già stato fatto. In tal caso,
non ci vuole molto ad adattare un report che già hai per creare
qualcosa di nuovo che, ripeto, nel 90% dei casi sarà molto simile
come struttura a uno che già hai. Inoltre, ho specificato che *avendo
strutturato bene l'applicazione* e *avendo creato un'infrastruttura
adeguata* la modifica al volo è un'operazione semplice e rapida,
certo partendo da zero il tempo necessario è maggiore...almeno
all'inizio, visto che molto del codice che vai a scrivere la prima
volta, lo riutilizzerai quasi sicuramente le volte successive...


Hai detto che mettendoci N mesi di lavoro, un template di scrive in 15
minuti. Con queste premesse sì, e aggiungo anche *avendo creato _bene_
l'infrastruttura*, ovvero avendo usato delle capacità di progettista e
sviuppatore al di sopra di quello che serve per progettare (zero) e
implementare (poco) un singolo template. Anche io posso andare  
sulla luna
in 3 giorni, *avendomi la NASA costruito un missile adeguato in 10  
anni*.


Il paragone non calza molto, visto che programmare è un'attività che  
non dovrebbe essere improvvisata

Re: [Python] migrazione da msaccess a python

2007-08-30 Per discussione Y3s


Il giorno 30/ago/07, alle ore 17:35, Daniele Varrazzo ha scritto:




On Thu, 30 Aug 2007 17:08:05 +0200, Y3s [EMAIL PROTECTED] wrote:


Ultima cosa, non mi trovo d'accordo su due cose: non ho mai visto
funzionare un file mdb (che è il target di default e quello più
utilizzato dagli utenti access) con accesso concorrente da più di 3/4
persone...e poi...impiegati svegli?!?!? :-)


Mah, quando ero un impiegato sveglio in una concessionaria


Quindi impiegato sveglio = lim(x - sysadmin) capacità(x) :-)

automobilistica ho messo circa 10 commerciali a fare i preventivi  
su un mdb

:)


E non si spu..ava l'archivio in continuazione? Ma soprattutto,  
DAVVERO sei riuscito a far lavorare dei commerciali? Complimenti :-)


--
Antonio Valente


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


Re: [Python] Re: migrazione da msaccess a python

2007-08-29 Per discussione Y3s


Il giorno 29/ago/07, alle ore 22:08, renzo andrioli ha scritto:

Mi spiace di aver avviato un contradditorio MySQL - PostgreSQL che  
da quanto
vedo non è nuovo ma che francamente mi sembra stucchevole.  
Personalmente
comunque non mi interessa anche perchè sarei intenzionato ad  
utilizzare

firebird.


Non preoccuparti, capita una settimana si e una no :-)
Se devi sostituire access dai anche un'occhiata a SQLite, anche se  
per quanto ricordo firebird può essere utilizzato in modalità  
embedded...



Apprezzo comunque la vivacità della discussione, e la rapidità delle
risposte: è il segnale di una comunità combattiva e disponibile,  
anche se le

risposte, a dire il vero, erano in larga parte fuori argomento.
renzo andrioli


La comunità è molto disponibile, e se deciderai di passare a python  
vedrai :-)


--
Antonio Valente


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


Re: [Python] Re: incontro in chat per discussione su python.it

2007-08-01 Per discussione Y3s


Il giorno 01/ago/07, alle ore 12:38, Domenico Chierico ha scritto:


On Wed, 2007-08-01 at 11:53 +0200, Manlio Perillo wrote:

Domenico Chierico ha scritto:

On Wed, 2007-08-01 at 11:21 +0200, Ludovico Magnocavallo wrote:


Io parto dal presupposto che siamo una comunità di programmatori.
Io che siamo una comunità di programmatori *con poco tempo* e  
ancora
*meno pazienza*, e che se rendi le cose difficili la gente le  
usa di meno.




Io sono nuovo ma penso che il punto di partenza e' che una
comunita' (nel senso stretto del termine) non c'e' e vogliamo  
crearla

(almeno questo mi e' sembrato di capire)



La comunità c'è, ma siamo programmatori e siamo pigri e occupati...


senti ora non e' per essere polemico ma le comunita' di  
programmatori le
conosco . la storia della lazyness e' un'altra faccenda   
fidati
python non e' che sta aprendo la strada maestra ad un'nuovo  
concetto di
comunita' di sviluppatori  ne esistono gia' e partecipo in  
varie...

la comunita' non c'e' ... c'e' quando ci sono centinaia di pesone che
gravitano attorno ad un progetto,  e questo succede quando c'e'
visibilita'/interesse/attivita'.


La comunità c'è, solo che non è concentrata attorno a python.it.  
Molti di noi devono molto alla comunità python italiana. Finora i  
punti di incontro sono stati il ng e questa ML. Evidentemente, per  
molte persone questo non è abbastanza comodo...







Plone? Uh Che vantaggi avrebbe rispetto a soluzioni più  
leggere e

infinitamente più customizzabili?

[...]

Un amico che di mestiere progetta siti grossi usando CMS ha  
definito

Django un CMS kit.


[...]
Si anche io sono di quest'idea ... django e' un'ottima soluzione  
se c'e'
voglia di scrivere un minimo di codice.. e' veloce semplice  
(soprattuto

da imparare) pochi concetti ben documentati, e quindi la via piu'
semplice per coinvolgere persone... Chiedere, a chi ha poche ore la
settimana da dedicare, di mettere mani su plone secondo me e' una
cattiveria bella e buona.




Del problema ne abbiamo già discusso.
Django *non è* un CMS, e quindi occorre scrivere del codice che:
- non sappiamo quanto tempo ci vorrà
- non abbiamo il tempo per farlo
- non abbiamo la disponibilità a *manutenerlo*


-si fa un progetto e si scopre quanto ci vorra' e cosa ci serve
-finche non ci apriamo ai contributi esterni sicuramente non c'e' il t
tempo (il tempo si misura in ore/programmatore ... non in ore  
assolute)

- chi non ha la disponibilita' scusa ?  parli tu per tutti ?


Plone è un CMS completo, è già pronto e abbiano qualche persona  
che lo

conosce e che può aiutarci nel setup iniziale (il quale setup poi
dipenderà da cosa vogliamo farci).


senti se vuoi usare plone usalo pure .. pero' poi non ti lamentare se
poca gente collabora ... la questione e' che maneggiare plone non e'
banale ... quindi se si vuole discutere in maniera costruttiva lo
possiamo anche fare, se deve essere una cosa TUA inutile parlare...
Io ho dato la mia visione delle cose e' penso semplicemente che django
sia + facile... se hai delle remore tecniche per cui non ti piace  
mi sta

benissimo ascoltarti e imparare da quello che hai da dire ...
ma una risposta sottilmente mascherata del tipo so a chi farlo  
fare e'

inutile se stiamo cercando un punto di incontro.


Non mi pare proprio che voglia usare plone..anzi, mi sa che potendolo  
evitare lo farebbe volentieri ;-)
Ma sicuramente plone è un software nato e sviluppato per essere un  
CMS, django non lo è, è a un livello più basso, per cui per farne un  
CMS bisogna lavorarci un po'. Non mi sembra una visione errata...





mi piacerebbe che nascesse una comunita' di riferimento in italia dove
nulla attecchisce per giochi di potere strani, ma la questione e'  
che il
lavoro del mantainer e' una cosa sicuramente non banale.. e le  
decisioni

devono essere per la comunita' e non per interesse personale.


Puoi motivare queste affermazioni?

--
Antonio Valente


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


Re: [Python] Re: incontro in chat per discussione su python.it

2007-08-01 Per discussione Y3s


Il giorno 01/ago/07, alle ore 12:57, Domenico Chierico ha scritto:


On Wed, 2007-08-01 at 12:49 +0200, Y3s wrote:


La comunità c'è, solo che non è concentrata attorno a python.it.
Molti di noi devono molto alla comunità python italiana. Finora i
punti di incontro sono stati il ng e questa ML. Evidentemente, per
molte persone questo non è abbastanza comodo...



ok punti di vista diversi .. per me una comunita' e'  
un'aggregazione di

persone che operano per obiettivi comuni, il fatto che in italia N
persone usino python non ne fa una comunita.



Quali obiettivi? Promuovere il linguaggio e tutto ciò che vi è  
collegato, aiutare i newbie, sviluppare software utile agli altri non  
sono buoni obiettivi?

PyconUno è nata per l'impegno e la determinazione di quelle persone...

--
Antonio Valente


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


Re: [Python] come ripeto una funzione dopo un certo intervallo di tempo?

2007-07-15 Per discussione Y3s


Il giorno 15/lug/07, alle ore 23:38, allanon ha scritto:


Sun 15 July 2007, alle 16:47 +0200, Eriol ha scritto:

On Friday 13 July 2007, allanon wrote:

come potrei fare?


Importare dal modulo threading:

from threading import Timer



ti ringrazio per la dritta,
infatti ho altre due domande per te :)



Rispondo io, va bene lo stesso? ;-)

1) come diavolo fai a saperlo dato che nella pagine online di  
reference

non c'e' scritto :p



Sa leggere la documentazione ;-)

http://www.python.org/doc/current/lib/module-threading.html


2)

questa e' la parte incriminata del mio codice

if __name__ == '__main__':
# creo l'oggetto database
   db = MySQLdb.connect(host = HOST,
  user = USER,
  passwd = PASSWD,
  db=DATABASE
  )
   c=db.cursor() # crea il cursore
   t = Timer(5.0, Repeated_Function(c))
   t.start()


lancio lo script,
viene eseguita la Repeated_Function per 1 volta
dopo 5 secondi ottengo questo errore

Traceback (most recent call last):
  File threading.py, line 442, in __bootstrap
self.run()
  File threading.py, line 607, in run
self.function(*self.args, **self.kwargs)
TypeError: 'NoneType' object is not callable


la connessione al db dovrebbe essere sempre attiva giusto?
e lo stesso dovrebbe valere per il cursore,
non capisco cosa non funziona O_O



Stai passando al timer il valore di ritorno della *chiamata* alla  
funzione. In questo modo, la funzione Repeated_Function viene  
chiamata subito, e al timer viene passato il suo valore di ritorno  
(nel tuo caso l'oggetto None). Questo ti spiega il messaggio d'errore.
La riga giusta dovrebbe essere qualcosa di simile (passi il nome  
della funzione e una sequenza dei suoi parametri):


t = Timer(5.0, Repeated_Function, (c,))

Tieni presente che comunque il timer è one-shot, ovvero se vuoi che  
venga eseguita *ogni 5 secondi* devi ri-schedulare (che brutto  
termine!) l'azione dopo che è stata eseguita. Questo se ti serve che  
il tuo programma continui a funzionare durante i 5 secondi di attesa,  
in caso contrario la cosa più semplice è quella di seguito.



il mio intento e' quello di lasciare sempre aperta una connessione
e di rinnovare solo la query ogni tot secondi



In tal caso (ovvero se devi solo eseguire la query ogni 5 secondi,  
senza fare niente nel frattempo), il codice più corretto dovrebbe  
essere qualcosa tipo:


import time

while True:
# Esegue la query o qualunque cosa
...
time.sleep(5)   # Attende 5 secondi

Oppure usare il modulo sched, che è fatto proprio per questo genere  
di cose.


Nel caso in cui l'esecuzione del tuo programma deve proseguire  
durante l'attesa, puoi anche provare a dare un'occhiata a Twisted,  
che per queste cose ti da molta potenza a basso costo (è piuttosto  
semplice in casi del genere)


--
Antonio Valente


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


Re: [Python] Info di wxPython

2007-06-03 Per discussione Y3s


Il giorno 03/giu/07, alle ore 15:19, Lawrence Oluyede ha scritto:

 Ciao volevo sapere dove posso trovare documentazione completa di  
wxPython.

 Suggerisco di poter mettere anche sul sito una parte che spiega la
realizzazione di interfacce con wxPython e altri ancora


Io ho usato/sto usando 3 risorse per imparare wx: la demo di wxPython
inclusa nell'installazione, il libro wxPython in Action e la
documentazione delle API



Hehehe, ti stai proprio convertendo a wx, eh? ;-)
Comunque concordo in pieno: ho preso da poco il libro e mi sembra  
ottimo per imparare, è abbastanza chiaro ed è di certo la  
documentazione più aggiornata che esista. La demo è essenziale e  
copre la maggior parte dei widgets, è anche ben documentata, quasi  
tutti i dubbi trovano risposta guardando gli esempi della demo.
Per quanto riguarda le API invece, se intendi quelle di wxPython le  
trovo abbastanza orrende...trovo molto più leggibile la  
documentazione delle API di wxwidgets, è per c++ ma IMHO intuitiva  
anche per chi non lo conosce.



Sul wiki c'è poca roba e parecchia obsoleta.


Alcune pagine però sono interessanti e utili!


Secondo me il miglior investimento è il libro e il codice


Pienamente d'accordo: non esistendo un tutorial abbastanza completo e  
aggiornato da risultare utile a chi comincia con questo toolkit, il  
libro risulta la scelta più semplice e rapida. Purtroppo costicchia  
ed è in inglese...ma l'alternativa è perdere un mare di tempo tra  
esempi, prove, domande sui ng...
Continuo a pensare che il vero difetto di wxPython (per chi comincia)  
sia la documentazione. E la mancanza di un sistema potente come glade/ 
qtdesigner.


Ciao
Antonio Valente___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Info di wxPython

2007-06-03 Per discussione Y3s


Il giorno 03/giu/07, alle ore 17:04, Lawrence Oluyede ha scritto:


Hehehe, ti stai proprio convertendo a wx, eh? ;-)


No è che mi serve per il lavoro :-D


Ah beh allora ;-)


Comunque non è poi così male ;-)


Hehehe


Anche se non riesco proprio a farmi andare giù i metodi come
SetValue invece che setValue (vedi maiuscola iniziale)


Anche a me non piace, però basta abituarsi...


Per quanto riguarda le API invece, se intendi quelle di wxPython le
trovo abbastanza orrende...trovo molto più leggibile la
documentazione delle API di wxwidgets, è per c++ ma IMHO intuitiva
anche per chi non lo conosce.


Si, io uso quella in C++ che però non ha tutte le classi che sono
state aggiunte a wxpython


Che sono diverse e spesso utili, purtroppo è vero...e pochissimo  
documentate per di più!



Continuo a pensare che il vero difetto di wxPython (per chi comincia)
sia la documentazione. E la mancanza di un sistema potente come  
glade/

qtdesigner.


Vero, ma alla fine dopo qualche settimana e qualche litro di sangue si
capisce più o meno bene come usare i sizers, panels e compagnia
cantante.


Infatti, una volta entrati nell'ottica diventa immediato..e  
soprattutto è tutto più o meno lineare, una volta capiti i meccanismi  
sai più o meno sempre cosa aspettarti...almeno se programmi in python!



È una mia impressione o il sistema delle scrollbar è un po' penoso
rispetto a gtk?


Beh, dal momento che esistono 3 diversi modi di usare una finestra  
scrollabile (uno più controintuitivo e scomodo dell'altro), direi  
che se è un'impressione la condivido in pieno ;-)
In linea di massima comunque personalmente tendo ad evitare le  
scrollbars (e finora ci sono riuscito praticamnte sempre): trovo il  
sistema scomodo e molto poco user-friendly. Molto meglio dividere  
l'interfaccia in unità logicamente raggruppabili, magari usando  
Notebook o cose simili, e presentare all'utente pochi controlli alla  
volta, in modo chiaro e intuitivo. Ovviamente questo non sempre è  
possibile, ma perdendo un po' (o parecchio) tempo a riprogettare la  
GUI, ci si riesce nella maggior parte dei casi!


Ciao
Antonio Valente

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


Re: [Python] migliorie sito python.it

2007-05-18 Per discussione Y3s


Il giorno 18/mag/07, alle ore 15:21, Manlio Perillo ha scritto:


Saluti.

Visto che si avvicina pycon, vogliamo ritentare un incontro via  
chat per migliorare il sito?


Se posso dire la mia, ci vorrebbe almeno un riferimento a python 2.5  
sulla home page, non ce n'è traccia ed è brutto direi :-)


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


Re: [Python] manuale da riga comando

2007-05-04 Per discussione Y3s


Il giorno 04/mag/07, alle ore 11:29, Sandro Dentella ha scritto:


Dunque, penso tu ti riferisca a pydoc


credo di si, anche se la ricordavo più aderente alla documentazione
web. Così come è non mi serve particolarmente.

Nel caso specifico stavo cercando la tabella delle direttive strftime
(modulo time) e mi scocciava andare sul browser per così poco... ma  
con

pydoc non lo trovo!


Personalmente mi trovo abbastanza bene con la documentazione in  
formato chm che si trova nella distribuzione per windows..con  
programmi come xchm ed altri la uso anche da linux e  
macosx..praticamente è la documentazione web pacchettizzata in un  
solo file, con un indice per la ricerca delle keywords..a mio avviso  
molto comoda!


Ciao

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


Re: [Python] DBF e python

2007-04-19 Per discussione Y3s


Il giorno 19/apr/07, alle ore 09:41, salvatore monaco ha scritto:


Ciao a tutti
volevo sapere se era possibile con python accedere ai file dbase  
III *.dbf
io in realta' ho bosogno di fare uno script che esegua il PACK 
(eliminazione dei record deleted) del dbf

in maniera ciclica su piu file
avete delle idee
se non riesco faro' in java.bah


Che io sappia, non è possibile.
Tutti gli strumenti che supportano il dbf non supportano nè pack nè  
zap..almeno di quelli di cui sono a conoscenza io.
Tempo fa avevo la stessa esigenza, e risolsi in modo piuttosto rozzo,  
con un programmino in Visual FoxPro che non faceva altro che prendere  
un nome del file come parametro ed eseguirne il PACK, con lo script  
python che gli forniva i nomi dei files da PACKare...
Funziona anche con Wine se non sei in ambiente MS, la rottura di  
scatole è che devi portarti dietro il runtime VFP, ma si tratta di 10  
mb alla fine...


Ciao

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


Re: [Python] DBF e python

2007-04-19 Per discussione Y3s


Il giorno 19/apr/07, alle ore 21:22, Enrico 'Henryx' Bianchi ha scritto:


Y3s wrote:

Tempo fa avevo la stessa esigenza, e risolsi in modo piuttosto rozzo,
con un programmino in Visual FoxPro che non faceva altro che prendere
un nome del file come parametro ed eseguirne il PACK, con lo script
python che gli forniva i nomi dei files da PACKare...
Senza offesa, ma se per fare un'operazione devo utilizzare due  
linguaggi
di programmazione, allora tanto vale usarne uno e andare di batch  
(o di

shell script, dipende dal sistema operativo)


Può darsi...ma:
1) Python è usato spesso come linguaggio di scripting
2) Se non ci sono alternative, come vuoi fare?
3) Dipende dalle esigenze, se si tratta solo di fare il PACK su una  
lista di files, può essere sufficiente un qualunque linguaggio dBase- 
compatibile (c'è anche http://www.harbour-project.org/ per chi non ha  
la possibilità di mettere le mani su un vecchio compilatore clipper,  
un Visual Studio = 6 o altro compatibile). La mia esigenza era  
quella di interagire con un vecchio software scritto in Clipper da un  
mio software scritto in Python, e non trovai nessuno strumento in  
grado di eseguire quelle operazioni direttamente da Python...la cosa  
più semplice era richiamare un piccolo programmino hepler che faceva  
SOLO quello...

Ciao

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


Re: [Python] il modulo random

2007-04-11 Per discussione Y3s


Il giorno 11/apr/07, alle ore 15:45, Daniele Zambelli ha scritto:


Alle 02:03, mercoledì 11 aprile 2007, Paolo ha scritto:
salve a tutta la lista,sto cercando di imparare qualcosina del  
python, sono

alle prime lezioni...ho un quesito da porvi:
mi sapreste dire come poter inserire in variabili o meglio in   
oggetti,
visto che python le considera tali, i valori estrapolati da questo  
esempio?

import random
print random.randint(1,9)
ovviamente eseguito piu volte!

dovrei per l'appunto immagazzinare tali risultati in variabili.
che poi mi servono per far richiamare casualmente dei file audio,
ovviamente i file audio sono nominati in numeri, quindi poi farò:
nomefile =(numero estrapolato da random)+ .wav
aspetto un vostro aiuto!
grazie a chi mi darà una mano!


nomefile = str(random.randint(1,9)) + .wav



O anche

nomefile = %s.wav%random.randint(1, 
9)___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Re: IDE per Python

2007-04-01 Per discussione Y3s


Comunque con emacs-gtk si può iniziare a scrivere un testo e salvarlo
senza dover saper scrivere 'wq' e premere 'i' ecc. ecc.



Solo per correttezza e completezza, anche con gvim puoi fare quasi  
tutto senza conoscere i comandi, ma dal menu




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


Re: [Python] Il modo migliore per generare file Microsoft Word

2007-03-30 Per discussione Y3s


Il giorno 30/mar/07, alle ore 13:24, Luca ha scritto:


Non capisco... dopo converti l'RTF in un .doc normale?

Ad ogni modo RTF è per me un formato forse troppo semplice... non  
ricordo bene ma RTF permette le tabelle?




Evita il top-quoting (si cita il msg a cui rispondi *prima* della  
risposta)
RTF permette le tabelle, se poi vuoi proprio un file word IMHO il  
modo più semplice è usare COM, in giro ci sono decine di esempi su  
come pilotare word tramite com. La maggior parte sono per Visual  
Basic, ma è immediata la conversione in python. Devi utilizzare i  
moduli di pywin32, se ne leggi la documentazione ti accorgi che è più  
difficile dirlo che farlo.
In ogni caso, a meno che non ti servano necessariamente delle  
caratteristiche dei file di word, puoi usare formati più aperti come  
appunto RTF o HTML, tutti importabili tranquillamente in Word e in  
altri WP___

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


Re: [Python] Il modo migliore per generare file Microsoft Word

2007-03-30 Per discussione Y3s


Il giorno 30/mar/07, alle ore 14:26, Luca ha scritto:


RTF permette le tabelle, se poi vuoi proprio un file word IMHO il
modo più semplice è usare COM, in giro ci sono decine di esempi su
come pilotare word tramite com.
In effetti ho trovato qualcosa come...

import win32com.client
w = win32com.client.Dispatch(word.application)
doc = w.Documents.Add(c:/test.doc)

Il problema è infatti cosa fare dopo, ad ogni modo qua mi arrangio  
volentieri! Grazie!


Il più è fatto :-)
Cosa fare dopo lo trovi nella documentazione Microsoft  
ovviamente...immagino che su MSDN troverai tutto il necessario!


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


Re: [Python] IDE per Python

2007-03-28 Per discussione Y3s


Portare tutto Cocoa è grosso modo come chiedere di portare le WinAPI.


E wine? :-)

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


Re: [Python] Re: IDE per Python

2007-03-28 Per discussione Y3s


Ecco qua, come vado a permalosità? ;-P


Puoi fare di meglio...mediocre diciamo ;-)


PS a me MacOS X piace MOLTO! (si, ce lo aggiungo: e chissenefrega)

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


Re: [Python] script per file di log nome del file

2007-01-20 Per discussione Y3s
Il giorno sab, 20/01/2007 alle 19.28 +0100, Salvatore MONACO ha scritto:
 Ciao a tutti vorrei ottenere da
 import datetime
 data = datetime.date.today()
  
 di creare un file che abbia come nome la data ottenuta come sopra piu'
 l'estensione log
 quindi devo ottenere un file 2007-20-01.log
  

o un semplice %s.log%data (guarda sul manuale l'operatore %) oppure se
vuoi altri formati, vedi il metodo strftime di date


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


Re: [Python] [pythonisti] aggiornamento

2007-01-19 Per discussione Y3s
 dell'admin perché tanto non impattano sulla tabella SQL, che è quella
 che deve essere scolpita nella roccia per ora dato che non abbiamo un
 tool per le migrazioni)

Scusa l'OT, esiste già uno strumento del genere che funzioni con
sqlalchemy? Ovvero che confronti il model con il DB e aggiorni
quest'ultimo di conseguenza? 


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


Re: [Python] Re: [Commits] python.it commit r263

2007-01-18 Per discussione Y3s
  Magari una ricerca su tutto il sito, con l'api di Google.
 
 Non avevi detto che non dovevamo dipendendere troppo da google :-) ?

Spero proprio che google non abbandoni il motore di ricerca :-)

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


Re: [Python] [pythonisti] pensare in grande?

2007-01-11 Per discussione Y3s
Il giorno gio, 11/01/2007 alle 12.22 +0100, Lawrence Oluyede ha scritto:
  No, questo no.
  Va bene il sito internazionale, ma deve essere localizzato (almeno in
  Italiano).
 
 Ok ma a che pro? Non credo che un Pythonista faccia cosi fatica a
 leggere name invece che nome. Non è un testo tecnico. Comunque
 facciamo cosi, ok per la localizzazione in italiano ma:
 

Non credo che sia questo il punto

  Se, ad esempio, faccio:
  http://it.pythonisti.org
 
  devo poter vedere *solo* i pythonisti italiani, in lingua italiana, come
  previsto originariamente.
 
 - niente sottodomini e niente esclusività.
 - nomesito.com/country/italy o quello che è rimane cosi. La differena
 è che se io ho il browser impostato in italiano leggo in italiano le
 stringhe, altrimenti rimane in inglese. Le descrizioni però sono
 tassativamente in inglese, altrimenti non ha alcun senso farlo
 internazionale. Se una ditta inglese vuole contattarmi, che fa, assume
 un traduttore?

Ad esempio, il modo di indicare un indirizzo è diverso per ogni
Paese...io farei una pagina generica in inglese dove il campo
indirizzo va formattato in una certa maniera, più una pagina per ogni
locale (per ora it e basta), in cui si predispongono i campi che formano
l'indirizzo (in italia: via, città, provincia, cap) e al momento del
submit si fa il join per formare la stringa corretta...non credo sia
particolarmente complesso ma in compenso è più usabile


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


Re: [Python] [pythonisti] definizione profilo pythonisti

2007-01-11 Per discussione Y3s
  Ok per la storia delle referenze e raccomandazioni.
  
 
 Attenzione che sono una cosa sola (a meno che tu non intenda un altra cosa).
Ma no ha ragione, le raccomandazioni sn solo nella localizzazione
italiana :-)

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


Re: [Python] Re: dati per svn

2007-01-10 Per discussione Y3s
Il giorno mer, 10/01/2007 alle 13.18 +0100, Manlio Perillo ha scritto:
 Lawrence Oluyede ha scritto:
  sorry ci eravamo persi in privato:
  
  On 1/10/07, Manlio Perillo [EMAIL PROTECTED] wrote:
  Lawrence Oluyede ha scritto:
   Hai provato a vedere se funziona usando solo path relativi?
   Altrimenti dobbiamo decidere come gestire la cosa.
  
   Puoi mettere path relativi nel settings.py ma non nell'urls.py.
 
  Credo che l'unica modifica che si deve fare è nella funzione map ed il
  template map.xhtml, inserendo le modifiche che già hai fatto (inclusa la
  rimozione di db.js)
  
  Senza la modifica a urls.py non funziona Manlio, i template Django non
  sanno dove andare a cercare i file altrimenti.
  
 
 Si, me ne ero dimenticato.
 
 Ho effettuato un commit per includere JQuery, comunque ho usato solo 
 path locali e funziona.
 
 Prova con http://localhost:8000/media/j/jquery.js
 Se va bene così possiamo fare le modifiche per usare Ajax.
 
 
 
 Saluti  Manlio Perillo

Posso chiedere che versione di django usate? A me da errori quando tento
di lanciarla...

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


Re: [Python] Re: dati per svn

2007-01-10 Per discussione Y3s
[CUT]

  Posso chiedere che versione di django usate? A me da errori quando tento
  di lanciarla...
  
 
 Io sto usando la versione da trunk.
 Che errori hai?

Ah ecco...io uso la versione installata da FC5..è la 0.95..aggiorno alla
trunk e riprovo...

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


Re: [Python] Re: dati per svn

2007-01-10 Per discussione Y3s
Il giorno mer, 10/01/2007 alle 16.15 +0100, Manlio Perillo ha scritto:
 Y3s ha scritto:
  Il giorno mer, 10/01/2007 alle 14.02 +0100, Y3s ha scritto:
  [CUT]
 
  Posso chiedere che versione di django usate? A me da errori quando tento
  di lanciarla...
 
  Io sto usando la versione da trunk.
  Che errori hai?
  Ah ecco...io uso la versione installata da FC5..è la 0.95..aggiorno alla
  trunk e riprovo...
  
  Ok,funziona...ero rimasto al fatto che usavi la stable :-)
  
 
 Per curiosità: che errori ti dava?

Quando tentavo di accedere a qualunque cosa mi dava un errore di nome
non trovato - cercava di chiamare rindex su una variabile callback che
conteneva una funzione...in particolare la riga che sollevava
l'eccezione si trovava nel package  django, ed era simile a questa (a
memoria):
callback.rindex('.') 
Se ti interessa ripristino la 0.95 e ti posto il traceback...ma è
evidente che è cambiato il tipo di callback,prima era una stringa (e
il fatto che cercasse il punto mi fa pensare che prima memorizzava il
nome della funzione completo di package) e ora è un callable...

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


Re: [Python] Re: [Commits] python.it commit r256

2007-01-10 Per discussione Y3s
Il giorno mer, 10/01/2007 alle 16.36 +0100, Manlio Perillo ha scritto:
 [EMAIL PROTECTED] ha scritto:
  Author: rhymes
  Date: Wed Jan 10 16:29:05 2007
  New Revision: 256
  
  Removed:
 code/pythonisti/trunk/pythonisti/template/geo/db.js
  Modified:
 code/pythonisti/trunk/pythonisti/geo/urls.py
 code/pythonisti/trunk/pythonisti/geo/views.py
 code/pythonisti/trunk/pythonisti/template/geo/map.xhtml
  Log:
  refactored urls and switched to Ajax to retrieve the JSON of the data for 
  gmaps
  
 
 I log in inglese sono compatti, ma si era deciso di averli in Italiano.
 
 A questo punto, resta da gestire il profilo degli utenti.
 La tabella users di Django ha già i campi first_name, last_name ed email.
 

Non ho ben chiari i ruoli, gli utenti sono:
- Quelli che si collegano x usufruire del servizio
- Quelli che forniscono il servizio (i pythonisti)
- Entrambi

 Dobbiamo ora decidere quali informazioni integrare.
 Infine dobbiamo stabilire se e come gestire le aziende.

Direi che le aziende vanno gestite allo stesso modo, io metterei un
semplice flag per distinguere un privato da un'azienda...o meglio,
qualcosa che indichi azienda/privato/ente no-profit,ecc..

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


Re: [Python] Re: [Commits] python.it commit r256

2007-01-10 Per discussione Y3s
Il giorno mer, 10/01/2007 alle 16.53 +0100, Lawrence Oluyede ha scritto:
  I log in inglese sono compatti, ma si era deciso di averli in Italiano.
 
 è più forte di me, ma mi adeguerò se proprio devo :D
 
  A questo punto, resta da gestire il profilo degli utenti.
  La tabella users di Django ha già i campi first_name, last_name ed email.
 
  Dobbiamo ora decidere quali informazioni integrare.
  Infine dobbiamo stabilire se e come gestire le aziende.
 
 No per le aziende, il nostro interesse sono le persone, si può fare un
 campo azienda ma direi di mantenerci ad un obiettivo solo. Far
 conoscere al popolo dove sono i Pythonisti, i loro skill ed
 eventualmente se sono disponibili per assunzioni, progetti. Guarda una
 pagina tipo di workingwithrails:
 http://www.workingwithrails.com/person/-anthony-eden
 

Io direi che non c'è differenza tra persone e aziende...

 Persona:
  - nome e cognome
  - nickname
  - email
  - status
  - nazione
  - azienda
  - homepage
  - about
 

Pythonista:
- Tipo (Privato,Azienda,Ente,Ecc)
- Nome (Cognome+nome per privato, ragione sociale per azienda)
- Nickname,ecc come sopra
- Skills, servizi offerti (consulenza,progettazione,sviluppo, ecc)
- Referenze (progetti sviluppati, ecc)
- Io metterei anche un campo per indicare se il target principale è l'OS
o il sw chiuso

 più i dati di popolarity e authority nell'altra colonna che boh ci si
 pensa se mettere o no
 
 ___
 Python mailing list
 Python@lists.python.it
 http://lists.python.it/mailman/listinfo/python

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


Re: [Python] Re: [Commits] python.it commit r256

2007-01-10 Per discussione Y3s
[CUT]

 Non permette di discriminare tra aziende che usano Python 
 ufficialmente da quelle in cui l'uso di Python è limitato alla 
 decisione del lavoratore, ma direi che è più che sufficiente.
 
  Far
  conoscere al popolo dove sono i Pythonisti, i loro skill ed
  eventualmente se sono disponibili per assunzioni, progetti. 
 
 Esattamente quello che volevo: farci publicità.
 Oltre ad assunzioni e progetti, pensavo anche a consulenze (didattica ma 
 non solo).

Appunto per questo, pensavo che l'obbiettivo fosse individuare i
pythonisti, poi che il pythonista in questione sia una persona, una
società, un ente, un gruppo o quant'altro credo che sia un dettaglio
successivo per l'utente...

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


Re: [Python] geo, fase 2

2007-01-08 Per discussione Y3s
Il giorno lun, 08/01/2007 alle 16.23 +0100, Lawrence Oluyede ha scritto:
  A meno, ovviamente, di non limitarci all'Italia.
 
 No no, allora si mette un bel label nella futura form con scritto:
 
 Example: 4th Street, New York, USA
 
 o cose così

Una form legata alla nazione è una c...ata?

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


Re: [Python] [pythonista] wiki

2006-12-28 Per discussione Y3s
Il giorno gio, 28/12/2006 alle 18.16 +0100, Manlio Perillo ha scritto:
 Ho creato una pagina sul wiki: 
 http://trac.python.it/wiki/Progetti/Pythonista

Pythonista o pythonisti? C'è discrepanza tra il repository e il wiki

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


Re: [Python] database sviluppatori e aziende pythoniste

2006-12-27 Per discussione Y3s
 Dalle mie parti la persona più vicina è Yes, che comunque abita in un 
 altra provincia, a 40KM di distanza.
 

Pythonisti campani, unitevi! (mi annovero tra i pythonisti, mica vi
offendete?)

Hai già qualcosa in mente per le specifiche del progettino?

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

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