Re: [Python] Domanda su twisted ed i deferred
Valentino Volonghi wrote: > Tutte le callback hanno SEMPRE come argomento il valore > ritornato dalla callback precedente. > > La lambda non e` quindi necessaria. > Beh, si, lo sapevo e credo di averlo dimostrato nel codice. Forse mi ero spiegato male, parlavo di quando "la callback ha come argomento una deferred...", cioè al caso tipo: @transact #decoratore che utilizza deferToThread def tt(arg1, arg2, arg3): return def funz(arg1): return dd = ... dd.addCallback... dd.addCallback(tt) dd.addCallback(funz) ... In questo caso accade che "funz" ha come unico argomento una deferred, e cosa può fare per attendere che sia finita? Quindi in genere io scrivo ... dd.addCallback(lambda x: tt(x, arg2, arg3)) dd.addCallback(funz) ... e "funz" viene chiamata esattamente alla fine della funzione "tt" e le viene passato correttamente l'argomento resituito (in questo caso None) E' stato il caso più difficile che mi sono trovato davanti quando mi misi a studiare twisted; spero di aver risolto in modo ottimale Alessandro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Domanda su twisted ed i deferred
On Sat, Feb 23, 2008 at 9:43 AM, aleuser <[EMAIL PROTECTED]> wrote: > In questo caso accade che "funz" ha come unico argomento una deferred, e Non e` la deferred l'argomento, e` il risultato della callback precedente. > cosa può fare per attendere che sia finita? > > Quindi in genere io scrivo > ... > dd.addCallback(lambda x: tt(x, arg2, arg3)) oppure dd.addCallback(tt, arg2, arg3) Comunque si, qua la lambda e` un uso accettabilissimo. Ora ci siamo capiti :). -- Valentino Volonghi aka Dialtone Now running MacOS X 10.5 Home Page: http://www.twisted.it ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Domanda su twisted ed i deferred
Valentino Volonghi wrote: > Comunque si, qua la lambda e` un uso accettabilissimo. > beh, cercando di spiegarmi ho approfondito e ho visto che in realtà io avevo capito male una cosa sulle deferred; la lambda è accettabile ma anche inutile > Ora ci siamo capiti :). > :-) Ciao Alessandro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] Liste collezioni, propietà
Vorrei creare un tool per la generazione di statistiche sui database scacchistici. Da quello che ho capito , mi potrebbe essere utile lavorare con le "liste" di Python . Due domande : 1- Qual'è la massima estensione (lunghezza) di una lista di stringhe in Python ? 2- Ho letto che le dichiarazioni di variabili all'interno di una lista , si separano con una virgola - (1,2,3,). Le mosse di scacchi sono scritte separate da uno spazio e da un numero (1. d4 Cf6 2. c4 e6). Si può sostituire lo spazio alla virgola? (per dichiarare le variabili ovviamente). Ora avendo la risposta a queste due domande , credo di avere gli strumenti per "importare" in Python una partita "singola" . Il problema è : per importare più partite da un database , come posso "dividere" le partite ? Cioè come posso fare sapere a Python quando finisce una partita e inizia una nuova ? Se importassi le partite manualmente , una a una , non ci sarebbe problema , potrei scrivere qualsiasi codice di programma e crearmi un database specifico, ma l'utilità dell'applicazione verebbe a meno. Io devo potere importare "automaticamente" le partite da un database esistente , o da una copia testuale di esso (un database di partite discacchi posso convertirlo in formato TXT,HTML,RTF o PGN -pgn è lo standar per i database di scacchi). - - L'email della prossima generazione? Puoi averla con la nuova Yahoo! Mail___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Liste collezioni, propietà
Alberto Aliberti ha scritto: > Vorrei creare un tool per la generazione di statistiche sui database > scacchistici. Da quello che ho capito , mi potrebbe essere utile > lavorare con > le "liste" di Python . Due domande : > 1- Qual'è la massima estensione (lunghezza) di una lista di stringhe > in Python ? Penso che vada ben oltre la tua disponibilità di RAM per caricarcela: in ogni caso, se vuoi fugare ogni dubbio, avvia l'interprete python e dai il comando: lista='a'*100 sostituisci a '100' quanto ti serve lunga la stringa. Se il comando viene eseguito senza problemi, hai appena creato una lista della lunghezza desiderata. Quindi si può. > 2- Ho letto che le dichiarazioni di variabili all'interno di una lista > , si separano con una virgola - (1,2,3,). Le mosse di scacchi sono > scritte separate da uno > spazio e da un numero (1. d4 Cf6 2. c4 e6). Si può sostituire lo > spazio alla virgola? (per dichiarare le variabili ovviamente). Dubito fortemente. Magari qualcuno esperto ti risponderà che invece si può fare... ma comunque tu cosa vuoi fare, "copia-incolla" delle partite nel //codice// del tuo programma?!? Direi di no: il tuo programma dovrà leggere degli //altri// file in cui ci sono le descrizioni delle partite. E allora avranno il loro formato, diverso da quello delle liste sotto python, e pace. Nota che comunque c'è una bella differenza tra: (1,2,3) e (1.,d4,Cf6) la prima è una lista di numeri, che il python conosce, la seconda è una lista di cose che il python non sa cosa sono, (a meno che prima non glie le definisca tu, ma temo siano un po' troppe!). Probabilmente quello che vuoi è importarle come stringhe, ovvero se tu volessi davvero mettere le partite nel codice del programma dovrebbero essere così: ("1.","d4","Cf6") > Ora avendo la risposta a queste due domande , credo di avere gli strumenti > per "importare" in Python una partita "singola" . Il problema è : per > importare più partite da un database , come posso "dividere" le > partite ? Cioè come posso fare sapere a Python quando finisce una > partita e inizia una nuova ? Se importassi le partite manualmente , > una a una , non ci sarebbe problema , > potrei scrivere qualsiasi codice di programma e crearmi un database > specifico, ma l'utilità dell'applicazione verebbe a meno. Io devo > potere importare "automaticamente" le partite da un database esistente > , o da una copia testuale di esso (un database di partite discacchi > posso convertirlo in formato TXT,HTML,RTF o PGN -pgn è lo standar per > i database di scacchi). In un qualsiasi di questi formati (ma prendi il più semplice, che immagino sia il TXT) le partite saranno separate in qualche modo, no? Perfetto, scopri in che modo sono separate, leggi un minimo di documentazione sulla lettura da file e sulle stringhe (un indizio: "split") sotto python e sei a posto. Pietro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python