[Python] array
si possono fare degli array a due dim. es a(1,1)=3 a(1,2)=4 a(2,1)=1 ecc.. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] refresh della form
volevo creare un testo scorrevole dentro una label ho fatto questo pezzo di codice ma ho dei problemi a far rigenerare la labe (o la form) python la rigenera infondo alla sub posso rigenerarla ad ogni passaggio del ciclo while? P.S. scrivere il testo nella finestra più in basso from Tkinter import * import time class variabili: definizione di variabili testos='' ptesto=' ' pass def scorri(): a=len (variabili.ptesto) if a ==0 : pass else : a=a-1 variabili.ptesto=variabili.ptesto+variabili.testos[a] class form1(): definizione della form def __init__(self): self.__root = tk = Tk() self.__root.title('testo_scorrevole') self.__root.maxsize(1000,400) self.__root.minsize(800,300) self.__root.tk_menuBar('file') self.label1 =Label(tk,bg='white',font=20,relief=SUNKEN) self.label1.place(x=10,y=10,height=40,width=100) self.testo =Text(tk) self.testo.place(x=10,y=100, height=100,width=100) self.button1 =Button(tk,text='ok',command=self.__command1) self.button1.place(x=210,y=100,height=40,width=40) self.m1 =Menu (tk) self.m1.activate def __command1(self): #self.label1.configure(text=self.testo.get(0.0,10.0)) variabili.testos=self.testo.get(0.0,10.0) variabili.ptesto=' ' while len(variabili.testos) len(variabili.ptesto) : #time.sleep(0.5) scorri() self.label1.configure(text=variabili.ptesto) self.label1.after(500) self.label1.mainloop() print variabili.ptesto def run(self): self.__root.mainloop() t= form1() t.run() testo_scorr.py Description: application/python ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] refresh della form
volevo creare un testo scorrevole dentro una label ho fatto questo pezzo di codice ma ho dei problemi a far rigenerare la labe (o la form) python la rigenera infondo alla sub posso rigenerarla ad ogni passaggio del ciclo while? P.S. scrivere il testo nella finestra più in basso from Tkinter import * import time class variabili: definizione di variabili testos='' ptesto=' ' pass def scorri(): a=len (variabili.ptesto) if a ==0 : pass else : a=a-1 variabili.ptesto=variabili.ptesto+variabili.testos[a] class form1(): definizione della form def __init__(self): self.__root = tk = Tk() self.__root.title('testo_scorrevole') self.__root.maxsize(1000,400) self.__root.minsize(800,300) self.__root.tk_menuBar('file') self.label1 =Label(tk,bg='white',font=20,relief=SUNKEN) self.label1.place(x=10,y=10,height=40,width=100) self.testo =Text(tk) self.testo.place(x=10,y=100, height=100,width=100) self.button1 =Button(tk,text='ok',command=self.__command1) self.button1.place(x=210,y=100,height=40,width=40) self.m1 =Menu (tk) self.m1.activate def __command1(self): #self.label1.configure(text=self.testo.get(0.0,10.0)) variabili.testos=self.testo.get(0.0,10.0) variabili.ptesto=' ' while len(variabili.testos) len(variabili.ptesto) : #time.sleep(0.5) scorri() self.label1.configure(text=variabili.ptesto) self.label1.after(500) self.label1.mainloop() print variabili.ptesto def run(self): self.__root.mainloop() t= form1() t.run() testo_scorr.py Description: application/python ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] alcune domande sui menu in tkinter
1) ho l'esigenza di abilitare e disabilitare alcuni menu il codice che ho scritto è il seguente menubar=Menu(self.__root) filemenu=Menu(menubar,tearoff=0) filemenu.add_command(label='nuovo',state=DISABLED,command=self.__menunuovo) filemenu.add_command(label='quit',command=self.__root.quit) menubar.add_cascade(label='file',menu=filemenu) tabmenu=Menu(menubar,tearoff=0) tabmenu.add_command(label='2',command=self.__settab2) tabmenu.add_command(label='3',command=self.__settab3) tabmenu.add_command(label='4',command=self.__settab4) tabmenu.add_command(label='5',command=self.__settab5) tabmenu.add_command(label='6',command=self.__settab6) tabmenu.add_command(label='7',command=self.__settab7) tabmenu.add_command(label='8',command=self.__settab8) tabmenu.add_command(label='9',command=self.__settab9) menubar.add_cascade(label='tabellina',menu=tabmenu) il menu nuovo all'inizio è disabilitato io ho scritto successivamente questo: menubar.configure(state=NORMAL) il sistema mi dice che menubar non esiste e fa lo stesso anche se scrivo: filemenu.configure(state=NORMAL) 2) quando ho finito esiste un posto dove i programmi fatti possono essere condivisi non mi piace fare dei programmini e tenerli tutti per me (cosa li faccio a fare?) grazie mille ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] alcune domande sui menu in tkinter
1) ho l'esigenza di abilitare e disabilitare alcuni menu il codice che ho scritto è il seguente menubar=Menu(self.__root) filemenu=Menu(menubar,tearoff=0) filemenu.add_command(label='nuovo',state=DISABLED,command=self.__menunuovo) filemenu.add_command(label='quit',command=self.__root.quit) menubar.add_cascade(label='file',menu=filemenu) tabmenu=Menu(menubar,tearoff=0) tabmenu.add_command(label='2',command=self.__settab2) tabmenu.add_command(label='3',command=self.__settab3) tabmenu.add_command(label='4',command=self.__settab4) tabmenu.add_command(label='5',command=self.__settab5) tabmenu.add_command(label='6',command=self.__settab6) tabmenu.add_command(label='7',command=self.__settab7) tabmenu.add_command(label='8',command=self.__settab8) tabmenu.add_command(label='9',command=self.__settab9) menubar.add_cascade(label='tabellina',menu=tabmenu) il menu nuovo all'inizio è disabilitato io ho scritto successivamente questo: menubar.configure(state=NORMAL) il sistema mi dice che menubar non esiste e fa lo stesso anche se scrivo: filemenu.configure(state=NORMAL) 2) quando ho finito esiste un posto dove i programmi fatti possono essere condivisi non mi piace fare dei programmini e tenerli tutti per me (cosa li faccio a fare?) grazie mille ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] il modulo random
Alle 02:03, mercoledì 11 aprile 2007, Paolo ha scritto: email io ho usato il modulo random per creare ina lista di mumeri casuali così import random from Tkinter import * class variabili : lista_bt=[['question','error','error','info','info','warning','warning'], ['n','n','n','n','n','n','n']] bottoni = ['zero','uno','due','tre','quattro','cinque','sei'] cont_bottoni =[1,0,0,0,0,0,0] # flag per il controllo per vedere se sono gia stati premuti i bottoni bt_press = 0 class form1: definizione della form def __init__(self): self.__root = tk = Tk() self.__root.title('testo_scorrevole') self.__root.maxsize(1000,400) self.__root.minsize(300,210) self.button1 =Button(tk,bitmap='question',command=self.__command1) self.button1.place(x=25,y=50,height=50,width=50) self.button2 =Button(tk,bitmap='question',command=self.__command2) self.button2.place(x=100,y=50,height=50,width=50) self.button3 =Button(tk,bitmap='question',command=self.__command3) self.button3.place(x=175,y=50,height=50,width=50) self.button4 =Button(tk,bitmap='question',command=self.__command4) self.button4.place(x=25,y=120,height=50,width=50) self.button5 =Button(tk,bitmap='question',command=self.__command5) self.button5.place(x=100,y=120,height=50,width=50) self.button6 =Button(tk,bitmap='question',command=self.__command6) self.button6.place(x=175,y=120,height=50,width=50) self.button7 =Button(tk,text='start',command=self.__command7) self.button7.place(x=50,y=10,height=20,width=50) self.label1 =Label(tk,text='',bg='white') self.label1.place(x=120,y=10,height=20,width=100) def __command1(self): if variabili.cont_bottoni[1] == 0: self.button1.configure (bitmap=variabili.bottoni[1]) if variabili.bt_press == 0: variabili.bt_press = 1 variabili.cont_bottoni[1] = 1 else: if variabili.bottoni[1] == variabili.bottoni[variabili.bt_press]: variabili.bt_press = 0 variabili.cont_bottoni[1] = 1 self.verifica_imm () else: variabili.cont_bottoni[1] = 0 variabili.cont_bottoni[variabili.bt_press] = 0 variabili.bt_press = 0 self.verifica_imm () def __command2(self): if variabili.cont_bottoni[2] == 0: self.button2.configure (bitmap=variabili.bottoni[2]) if variabili.bt_press == 0: variabili.bt_press = 2 variabili.cont_bottoni[2] = 1 else: if variabili.bottoni[2] == variabili.bottoni[variabili.bt_press]: variabili.bt_press = 0 variabili.cont_bottoni[2] = 1 self.verifica_imm () else: variabili.cont_bottoni[2] = 0 variabili.cont_bottoni[variabili.bt_press] = 0 variabili.bt_press = 0 self.verifica_imm () def __command3(self): if variabili.cont_bottoni[3] == 0: self.button3.configure (bitmap=variabili.bottoni[3]) if variabili.bt_press == 0: variabili.bt_press = 3 variabili.cont_bottoni[3] = 1 else: if variabili.bottoni[3] == variabili.bottoni[variabili.bt_press]: variabili.bt_press = 0 variabili.cont_bottoni[3] = 1 self.verifica_imm () else: variabili.cont_bottoni[3] = 0 variabili.cont_bottoni[variabili.bt_press] = 0 variabili.bt_press = 0 self.verifica_imm () def __command4(self): if variabili.cont_bottoni[4] == 0: self.button4.configure (bitmap=variabili.bottoni[4]) if variabili.bt_press == 0: variabili.bt_press = 4 variabili.cont_bottoni[4] = 1 else: if variabili.bottoni[4] == variabili.bottoni[variabili.bt_press]: variabili.bt_press = 0 variabili.cont_bottoni[4] = 1 self.verifica_imm () else: variabili.cont_bottoni[4] = 0 variabili.cont_bottoni[variabili.bt_press] = 0 variabili.bt_press = 0 self.verifica_imm () def __command5(self): if variabili.cont_bottoni[5] == 0: self.button5.configure (bitmap=variabili.bottoni[5]) if variabili.bt_press == 0: variabili.bt_press = 5 variabili.cont_bottoni[5] = 1 else:
[Python] interfaccia grafica per tkinter
esiste un interfaccia grafica tipo quella di vb per creare la form ? se non esiste me la faccio se invece qualc'uno la conosce mi risparmio la fatica va bene sia sotto windows che unix ___ Python mailing list [EMAIL PROTECTED] http://lists.python.it/mailman/listinfo/python
[Python] passaggio di dati tra file
ho un file che contiene 4 classi ho provato a dividerle e uscare l'import per caricare i file uno dentro l'altro il problema che ho è il seguente quando lancio la classes corporata ci sono delle liste dichiarate nelle altre classi (lasciate nel file originale) il sistema mi solleva una eccezione dicendomi che la luista non è definita nel file importato altra eccezione viene sollevata quando cerco di utilizzare dal codice esportato nel file una classe istanziata nel file riginale come faccio a rendere visibile a tutti u file la stessa classe? datemi una mano senno faccio um file con 200 classi ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] presentazione
Ciao a tutti, mi sono da poco iscritto e ancora non conosco niente di questo linguaggio se non il fatto che usa l'indentazione al posto di parentesi o begin/end e la cosa mi lascia alquanto sconcertato. :) Scherzi a parte, vorrei imparare a programmare in Python e quindi vi chiedo se avete qualche consiglio o indicazione da darmi su come iniziare. Intanto mi sono scaricato i libri digitali proposti dal vostro sito e piano piano iniziero' a fare qualcosa. Io vengo dall'ambiente Perl, PHP, bash, ecc. e l'utilizzo di Python sara' esclusivamente su sitemi GNU/Linux e Mac OS X. ciao e grazie in anticipo per eventuali risposte. -- lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] python cryptographic toolkit
Ciao volevo installare il modulo python cryptographic toolkit per il python 2.5 su ubuntu. Potreste dirmi dove posso scaricare tale modulo e come fare ad installarlo. Sapete inoltre dirmi se ha dei bachi. Grazie Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] python cryptographic toolkit
Grazie Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] problemi con un programma in python
Ciao volevo implementare in python il protocollo di autenticazione denominato EKE (Encrypted key exchange). Il protocollo prevede che due entità (nel mio caso due processi) si scambino dei messaggi cifrati con i quali riescono ad autenticarsi a vicenda. Il mio problema sta nel fatto che quanto il processo client invia al server una stringa contenente dei numeri cifrata con una certa chiave, il server certe volte la decifra sbagliata. Esempio il client invia al server la stringa 02340256 cifrata con una certa chiave quando il server la riceve la decifra con la stessa chiave e trova al posto di 02340256 02380256 Sto implementando questo protocollo su ubuntu, sto utilizzando il python 2.5 e utilizzo come modulo crittografico python-crypto. Puo' darsi che sia un problema dovuto a qualche bug nella libreria? Grazie Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] programma in python su ubuntu
Ciao ho implementato un programma in python che consiste in due processi che si scambiano messaggi cifrati utilizzando i socket. Quando lo eseguo in ubuntu, al termine dell'esecuzione i caratteri della shell sono tutti cambiati in maniera incomprensibile. A che cosa è dovuto questo? Grazie Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] programma in python su ubuntu
2008/7/25 Manlio Perillo [EMAIL PROTECTED] Lorenzo Marini ha scritto: Ciao ho implementato un programma in python che consiste in due processi che si scambiano messaggi cifrati utilizzando i socket. Quando lo eseguo in ubuntu, al termine dell'esecuzione i caratteri della shell sono tutti cambiati in maniera incomprensibile. A che cosa è dovuto questo? Ti hanno già risposto sulla causa. Io ti indico la soluzione: eseguire `reset` (probabilmente due volte). Grazie Lorenzo Ciao devo eseguire reset di che cosa? Grazie Lorenzo 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
[Python] gestione della memoria in python
Ciao a tutti è possibile in python al termine di uno script liberare la memoria (cioè eliminare dalla memoria tutti gli oggetti creati)? grazie Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] gestione della memoria in python
Ok ho capito, grazie intendevo proprio quello. Grazie ancora Lorenzo 2008/8/2 Enrico Franchi [EMAIL PROTECTED] Il giorno 02/ago/08, alle ore 17:52, Lorenzo Marini [EMAIL PROTECTED] ha scritto: Ciao a tutti è possibile in python al termine di uno script liberare la memoria ( cioè eliminare dalla memoria tutti gli oggetti. Quando uno script termina, viene reclamata tutta la memoria e viene distrutto tutto. O intendevi qualcos'altro? ___ 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
[Python] Parsing html
Salve a tutti!... Sto cercando di realizzare uno strumento per analizzare i padri e i figli degli elementi di un file Html, Es: div id = wrap div id=item1/div div id=item2 div id=altroItem/div /div /div wrap è padre di (item1, item2, altroItem) item2 è padre di (altroitem) e memorizzare queste informazioni in una lista in modo da poterle riutilizzare... Quale approccio posso usare in python, esistono dei moduli per fare il parsing di file html.. che magari fanno già in automatico un processo simile di definizione dei padri e figli?? Grazie anticipatamente!!... Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Parsing html
Ok Grazie Mille!!!.. Ho dato un'occhiata a qualche esempio... Penso sia lo strumento che cercavo.. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Parsing html
Ok proverò con questo grazie!! Inviato da iPhone Il giorno 07/dic/2009, alle ore 17.14, Marco Dalla Stella m.dallaste...@gmail.com ha scritto: Il 07 dicembre 2009 15.05, Lorenzo Macchiavelli lmacchiave...@gmail.com ha scritto: Salve a tutti!... Salve, Quale approccio posso usare in python, esistono dei moduli per fare il parsing di file html.. che magari fanno già in automatico un processo simile di definizione dei padri e figli?? Io utilizzerei lxml, è parecchio veloce e parsa ottimamente l'html. http://codespeak.net/lxml/ Saluti, -- Marco Dalla Stella web: http://thediracsea.org twitter: http://twitter.com/kra1iz3c ___ 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] Calcolare la distanza km tra due indirizzi
Ciao Siccome ho avuto la stessa problematica tempo fa c'è questo che troverai di sicura utilità!!! http://darcas.net/index.php/2008/10/12/calcolo-della-distanza-tra-due-punti-geografici/ Lorenzo Macchiavelli Il giorno 15 dicembre 2009 17.11, Francesco Demuro francesco.dem...@sinapsi.it ha scritto: Ciao a tutti, è possibile calcolare la distanza km tra due indirizzi utilizzando le api di google, senza visualizzare una mappa, semplicemente ottenendo i km? Grazie in anticipo per le risposte. -- Francesco Demuro ___ 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
[Python] Trovare un'occorrenza in un file e sostituire un valore
Salve a tutti qualcuno può aiutarmi?? Dovrei fare un find and replace in py un pò avanzato( Per ME!!!) del tipo: Quando è presente la stringa di tipo AB Devo Sostituire i valori all'intero tra i : e AB moltiplicando per 11 il valore all'interno e sostituire la stringa AB CON RB. Il File è formattato in questo modo: ... RTS_YAS:10293AB RTC_YAS:1003AB RTS_YAS:010003RB ... ESEMPIO: RTS_YAS:10293AB diventa RTS_YAS:113223RB Qualcuno può spiegarmi come fare??? quale ragionamento fareste per risolvere questo tipo di problema?? So che magari può sembrare banale... ma sto cercando di capire quale tipo di approccio userebbe un programmatore esperto!! Grazie Anticipatamente Lorenzo Macchiavelli ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Trovare un'occorrenza in un file e sostituire un valore
haha!! Grazie A tutti Per l'aiuto!!! Ah, non sono un programmatore esperto - ed in effetti non credo sia molto efficiente -, ma il VeroProgrammatore in realtà è quello che buca le schede perforate con lo sguardo (cit) :D ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Riconoscere sistema operativo
Ciao, Prova Con: import os if os.name == posix: # Unix/Linux/MacOS/BSD/etc os.system('clear') elif os.name in (nt, dos, ce): # DOS/Windows os.system('CLS') else: # Fallback for other operating systems. print '\n' * numlines Lorenzo Macchiavelli Il giorno 22 marzo 2010 12.29, Sandro Tosi matrixh...@gmail.com ha scritto: 2010/3/22 stefano664 stefano...@gmail.com: Come faccio una routine per capire da che sistema operativo sto interpretando il codice?. $ ipython In [1]: import platform In [2]: platform.system() Out[2]: 'Linux' spero che su win ritorni Windows (non ho macchine dove provare). Ciao, -- Sandro Tosi (aka morph, morpheus, matrixhasu) My website: http://matrixhasu.altervista.org/ Me at Debian: http://wiki.debian.org/SandroTosi ___ 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] Hai ricevuto un messaggio da Marco Muratore...
bello Spam!!! Lorenzo Macchiavelli Il giorno 22 luglio 2010 10.42, Badoo nore...@badoo.com ha scritto: See this email in Englishhttp://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=3, Deutsch http://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=5, Français http://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=6, Español http://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=7, Português http://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=61 or 13 other languageshttp://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=8 . Hai ricevuto un messaggio da Marco Muratore... Il mittente ed il messaggio che ti ha inviato saranno visibili solo a te. Per leggere cosa ti ha scritto e rispondere tramite il Messenger, segui questo link: http://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=8 *Leggi il tuo messaggio...http://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=8 * -- Altra gente che ti sta aspettando: http://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=8 Samuele Portogruaro, Italia http://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=8 Jessica San Remo, Italia http://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=8 Silvia San Remo, Italia Se cliccando sul link, questo non dovesse funzionare, copialo nella barra degli indirizzi del tuo browser: http://eu1.badoo.com/0177060906/in/QsKnVILPxYc/?lang_id=8 Questa comunicazione fa parte del sistema di notifica per il messaggio inviatoti da Marco Muratore. Se pensi che si tratti di un errore, ignora questa comunicazione. Buon divertimento! Il team di Badoo Hai ricevuto questa email, in quanto un utente di Badoo ti ha lasciato un messaggio su Badoo. Eventuali risposte a questa email non sono monitorate ne risposte. Se non desideri ricevere altri messaggi da Badoo, faccelo saperehttp://eu1.badoo.com/impersonation.phtml?lang_id=8mail_code=21email=python%40lists.python.itsecret=invite_id=655060user_id=177060906 . ___ 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] Numero to byte
Ciao, Daniele Varrazzo wrote: On Tue, 11 Jan 2011 12:29:32 +0100, Vittorio Zuccala' vittorio.zucc...@gmail.com wrote: Buongiorno a tutti, vi scrivo su un parere su un algoritmo... Ho un file con una serie di numeri che in qualche modo recupero. Questi numeri rappresentano byte, Kb, Mb, Gb, Tb... Vorrei trasformarli in modo leggibile. Ad esempio (posso immagazzinarli in un array, dizionario o altro... non importa): 172183142400=172,1Gb 250057060352=250,0Gb 132450=132,4Kb e così via. L'operazione è di per sè semplice ma l'ho risolta con una serie di if. Se maggiore di 1000, dividi per mille, e mettici kb a fianco. Se maggiore di 1000.000. Secondo voi c'è un modo più elegante o meno dispendioso? Grazie in anticipo... Per esempio si puo' fare con un loop sui suffissi conosciuti, dividendo per 1000 ad ogni passo, finche' hai meno di 1000 o sono finiti i suffissi. http://diveintopython3.org/your-first-python-program.html Comunque e' solo piu' elegante di una fila di if, non piu' efficiente. O così ma... niente controllo errore e non credo sia meno dispendioso della serie di if (e sicuramente è anche meno leggibile), forse un po' più divertente :) def bytesToHuman (b,factor=1024.): units = ['bytes', 'KB', 'MB', 'GB', 'TB', 'PB'] for i in xrange (1,len (units)+1): if b factor ** i or i = len(units): return ('%.1f %s') % ((b/(factor **(i-1))),units[i-1]) Lorenzo PS: Primo post, lista molto interessante e simpatica (in giusto spirito pythonico) :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Numero to byte
lordkrandel wrote: #On 11/01/2011 15.00, Lorenzo Sutton wrote: # def bytesToHuman (b,factor=1024.): # units = ['bytes', 'KB', 'MB', 'GB', 'TB', 'PB'] # for i in xrange (1,len (units)+1): # if b factor ** i or i= len(units): # return ('%.1f %s') % ((b/(factor **(i-1))),units[i-1]) # # Che ne dici di un po' di magia Eh eh.. ai limiti dell'offuscamento ;) # Dimmi se funziona Certo che funziona.. molto carina. def f( bytes, factor=1024, labels=['', 'Ki', 'Mi', 'Gi', 'Ti', 'Pi'], precision=4 ): for x,y in map( lambda x: ( factor**(x[0]+1), ('%.' + str(precision) + 'lf %sB') % (bytes / factor**x[0], x[1]) ), enumerate(labels) ): if (bytes x) or (y == labels[-1]): return y # Test for x in range(16): y = 512.12*(10**x) print f(y) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Numero to byte
lordkrandel wrote: On 12/01/2011 11.29, lordkrandel wrote: return ('%.' + str(precision) + 'lf %s') % (bytes * factor / n, label) Una cosa importante è che bytes * factor / n lavori con float, altrimenti se viene immesso bytes e factor interi la divisione sarà intera. Credo che basti fare (untested) bytes = float (bytes) da qualche parte. Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Conversione tupla in intero
Ciao Marco Beri wrote: 2011/2/9 Nicola Ferrari nick.fe...@gmail.com mailto:nick.fe...@gmail.com Buonasera a tutti.. Domanda probabilmente stupida.. avendo una tupla (1,2,3,4,5,6,7), come posso creare un intero formato dagli elementi della tupla? (nell'esempio della tupla sopra, 1234567)? Se ho una tupla di stringhe posso usare .join per concatenarli, ma nel caso di un intero?? Grazie int(.join(map(str, (1,2,3,4,5,6,7 o anche (molto simile ma usando le List Comprehensions [1])... int (''.join ([(str(x)) for x in (1,2,3,4,5,6,7)])) Super-*criptic*-fragilisti-chespiralidoso :) Lorenzo [1] http://docs.python.org/tutorial/datastructures.html#list-comprehensions Ciao. Marco. -- http://thinkcode.tv/gratis - Capire in 15 minuti cosa può fare Python http://stacktrace.it - Aperiodico di resistenza informatica http://python.thinkcode.tv - Videocorso di Python http://beri.it - Blog di una testina di vitello ___ 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] Conversione tupla in intero
Marco Beri wrote: On 10/feb/2011, at 08:11, Lorenzo Sutton lsut...@libero.it mailto:lsut...@libero.it wrote: Ciao Marco Beri wrote: 2011/2/9 Nicola Ferrari nick.fe...@gmail.com mailto:nick.fe...@gmail.com Buonasera a tutti.. Domanda probabilmente stupida.. avendo una tupla (1,2,3,4,5,6,7), come posso creare un intero formato dagli elementi della tupla? (nell'esempio della tupla sopra, 1234567)? Se ho una tupla di stringhe posso usare .join per concatenarli, ma nel caso di un intero?? Grazie int(.join(map(str, (1,2,3,4,5,6,7 o anche (molto simile ma usando le List Comprehensions [1])... int (''.join ([(str(x)) for x in (1,2,3,4,5,6,7)])) Mi sa che hai un paio di quadre e uno di tonde superflue :-) E vero grazie! Infatti funziona anche così: int (''.join (str(x) for x in (1,2,3,4,5,6,7))) PS: Trucco infallibile di una mia prof. [forgottenNameHere] per le parentesi: contare +1 per quelle aperte -1 per qulle chiuse. Il totale finale dev'essere 0 :) ___ 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] Allineamento stringe [ERA]: [NIUBBO] Python razzista? ; -)
Ciao, Estratti da Cesco: [...] ho bisogno di allineare a destra un numero posso scrivere: print {0:-5}.format(123) Mi restituisce spaziospazio123 O anche: print (%5d) % 123 Ma se ho bisogno di fare la stessa cosa con una stringa: print {0:-5}.format(Joe) Mi solleva un eccezione? (Sign not allowed in string format specifier) Eppure se tento di allineare a sinistra quello stesso testo funziona perfettamente: print {0:5}.format(Joe) infatti restituisce correttamente: Joespaziospazio A parte gli scherzi, posso chiedervi come si fa a fare il padding verso destra di una stringa senza scrivere una funzione? Se ho capito bene vuoi fare questo? s = 'Joe' s.ljust (5) 'Joe ' s.rjust (5) ' Joe' help (str.ljust) ... ljust(...) S.ljust(width[, fillchar]) - string Return S left-justified in a string of length width. Padding is done using the specified fill character (default is a space). Quindi questo mi sembra un chiaro episodio di discriminazione verso le povere stringhe! :-D Razzista? Ma no, ;-) anzi Python è il linguaggio più aperto del mondo un melting pot di di funzionale e object-oriented che convivono pacificamente senza farsi la guerra.. tipo che cambiano in continuazione.. E in più IMHO ha una delle comunità più aperte, amichevole e d'aiuto tra tutti i linguaggi :-) Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Su fullcircle
Kalos Bonasia wrote: è da diversi mesi che su FC pubblicano interessanti spunti basati su python e devo dire che se in italia le mille-e-mille riviste di pseudo informatica, ossia i cataloghi illustrati dei distributori-rivenditori italiani, camuffati da rivista di informatica, dedicassero ampio spazio a questo linguaggio e comunqe a tanti altri linguaggi di programmazione, forse, ma dico forse, potrei iniziare a non rimpiangere le mitiche riviste anni'80 come mc microcomputer o computer programming e simili... del resto si parla tanto di rispetto per l'ambiente e di decelerazione soffice... perché annientare miliardi di ettari di foresta amazzonica per pubblicare l'ennesima prova su strada dei migliori 300 masterizzatori o l'ultimo tricktrip sull'iPhone quattro... +1 Lorenzo. Il 07 marzo 2011 21:33, emanuele scopelscopel.emanu...@gmail.com ha scritto: volevo segnalare, sopratutto per coloro che sono agli inizi, uno speciale dedicato a python su: ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] python xml
Ciao, nibbio padano wrote: salve, ho fatto qualche script in python nulla di complesso cose molto semplici per un comune. ora dovrei trasformare dei dati archiviati su un foglio di excel in dati xml con delle specifiche ben precise rilasciate dal ministero del tesoro su un file xds. per excel so che c'è la libreria cvs l'ho già usata e va bene, per l'xml esiste qualcosa che utilizzi il file xds per creare poi il file xml come specificato?. Tra le tante, per XML ti consiglio di dare un'occhiata a lxml Lorenzo. grazie in anticipo Gilberto ___ 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] listdir
Giovanni Marco Dall'Olio wrote: Puoi usare glob.iglob, che ritorna un iteratore e non una lista. # esempio1: for filename in os.listdir('.'): print filename # esempio2: for filename in glob.iglob('.'): print filename Bella idea! Credo che per avere un comportamento più simile a esempio1 però dovrebbe essere glob.iglob('*'). Altro problema potrebbe essere nel caso ci siano file nascosti di tipo .nomefile che glob ignora. Lorenzo. la differenza tra esempio1 e esempio2 è che nel primo viene generata tutta la lista dei file nella directory (occupando memoria), mentre in esempio2 viene preso un file alla volta (con una occupazione di memoria minima). 2011/7/21 Marco Mariani bir...@gmail.com: 2011/7/21 Filadelfo Fiamma philosga...@gmail.com avrei una curiosità: esiste il modo di limitare il numero di elementi trovati da os.listdir? Se ho una cartella contenente 2 milioni d files, Comunque se hai una cartella cosi', tutti i programmi che ne fanno uso avranno vantaggio dividendola in uno o due livelli di sottocartelle possibilmente di dimensione confrontabile. Cosi' fanno i programmi che devono gestire milioni di file di cache. Se i file non vengono rinominati, una buona idea potrebbe essere usare, come nome delle sottocartelle, la prima parte dell'md5 del nome dei file che andranno a contenere. ___ 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] carattere speciale °
On 22/11/2011 20:49, Riccardo mancuso wrote: salve a tutti, come si fa ad visualizzare il simbolo del grado ? ossia, se scrivo: seq=[2.4°,1.5°] pythoni visualizza: print seq ['2.4\xc2\xb0', '1.5\xc2\xb0'] come convertire quei caratteri strani nel simbolo del grado ? print (['%s']) % (', '.join(seq)) :) (Ma vedi la risposta più seria di Daniele su unicode ecc. ecc.) Lorenzo. grazie. ciao ___ 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] Python e html
On 23/11/2011 00:12, Marco Beri wrote: On Wed, Nov 23, 2011 at 12:11 AM, Carlos Catucci carlos.catu...@gmail.com mailto:carlos.catu...@gmail.com wrote: dio non c'avevo mai pensato. PHP = Personal Home Page Ah non era Pratically Hated Programming? Inventato al momento Poor Hopeless Programmer. (non mio): Programmers Hurting People ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- ** NOTE **: This gmail address is my new email. I will still be reading my libero.it email, but please use this new one for any further email. Thanks you for understanding. ** NOTA **: Questo indirizzo gmail è la mia nuova email. Continuerò a leggere la posta libero.it ancora per un po' ma vi prego di usare questa nuova da ora in poi. Grazie per la comprensione. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] [OT]: PHP critique [ERA] Re: Python e html
On 25/11/11 10:57, Nicola Larosa wrote: Nicola Larosa wrote: Anche per me non è facile capire come un progetto fatto bene come Drupal possa essere implementato con uno strumento mediocre come PHP. C'è però da segnalare una triste realtà... Ricerca annunci di lavoro su noto sito di annunci di lavoro italiano: Parola chiave php: 364 offerte trovate Parola chiave python: 27 offerte trovate Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Simone Federici wants to chat
On 20/03/12 22:18, Simone Federici wrote: Si ok, apro il thread a insulti vari, tutto ammesso :-) Era meglio il link a A history of Python web presence :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Come stampare su schermo senza generare nuove righe
On 17/04/12 22:20, Diego Barrera wrote: On 17/04/2012 16:03, Marco Beri wrote: 2012/4/17 Karim Gorjux lemieli...@gmail.com mailto:lemieli...@gmail.com Salve, mi piacerebbe poter stampare su schermo delle stringhe di output, ma senza doverle sempre ripetere. Ad esempio, se volessi fare un conto alla rovescia, vorrei che i numeri fossero scritti sempre nello stesso posto e non così 4 3 2 1 via! o così (con la virgola dopo il print) 4 3 2 1 via! Sapete indicarmi anche solo dove posso trovare doc su internet? Io pensavo che fosse il sys.stdout.flush(), ma penso di essermi sbagliato Prova questo: import sys import time for x in range(10): sys.stdout.write(%d\r % x) sys.stdout.flush() time.sleep(0.5) A me se provo per il conto alla rovescia sys.stdout.write(%d\r % (10-x)) rimane lo zero del numero 10... invece di 9 mi dice 90 invece di 8 , 80 etc. Visto che mi ha incuriosito, c'e' un modo per far sparire proprio tutte le cifre/caratteri? A me viene tipo import sys import time for x in range(10): message=%d\r % (10-x) sys.stdout.write(message) sys.stdout.flush() time.sleep(0.5) sys.stdout.write(' ' * len(message) + '\r') sys.stdout.flush() Pero' non mi pare tanto bello :) Anche così forse (però mette il padding a sinistra dei numeri minori di 10)... import sys import time for x in range(10, 0, -1): sys.stdout.write(%2d\r % x) sys.stdout.flush() time.sleep(0.5) print(VIA!) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Dubbi sull'accesso ad un file xml
Ciao anche se hai trovato la soluzione... visto che ultimamente sto lavorando parecchio con xml ti incollo una veloce sessione di test con xml.etree.ElementTree (comunque lxml completo vale la pena) sperando possa essere utile. On 18/04/12 16:21, Karim Gorjux wrote: Ciao a tutti! Ho un problema con il parsing di file xml. Più precisamente non riesco a posizionarmi nel nodo che vorrei. from xml.etree.ElementTree import ElementTree tree = ElementTree() tree.parse('C:\file.xml') root = tree.getroot() A questo punto root contiene l'elemento che punta alla radice del file xml. (Se non sbaglio) Io vorrei ottenere l'elemento diciamo c che nell'albero sarebbe root/a/b/c Come posso ottnere direttamente quell'elemento? Immaginando che il file di input sia file.xml: --- file.xml --- ?xml version=1.0 encoding=UTF-8? root_el a b c testatt=myatttest/c c testatt=myatt2test2/c /b /a /root_el from xml.etree.ElementTree import ElementTree tree = ElementTree(file='file.xml') tree # OUT: xml.etree.ElementTree.ElementTree object at 0x912110c root = tree.getroot() root # OUT: Element 'root_el' at 0x8f2c6ec c_el_iterator = root.iterfind('./a/b/c') for iter_el in c_el_iterator: print iter_el.tag print iter_el.text # OUT: c # OUT: test # OUT: c # OUT: test2 c_el_list = root.findall('./a/b/c') for el_item in c_el_list: print el_item.tag print el_item.text # OUT: c # OUT: test # OUT: c # OUT: test2 first_c_el = root.find('./a/b/c') first_c_el.text # OUT: 'test' first_c_el.tag # OUT: 'c' first_c_el.attrib # OUT: {'testatt': 'myatt'} ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] espressioni regolari
Ciao a tutti, sto cercando di realizzare un piccolo script che apre tutti i file del cms (centinaia, lavoro devastante ) che uso in azienda e pulisce gli spazi tra i tag, tabulazioni ,ritorni a capo e commenti! tutto funzionante!... tranne la cosa essenziale!!... l'espressione regolare che elimina gli spazi :) ! premettendo che sono pochi giorni che ho iniziato ad utilizzarle! result = re.sub(r(?m)(\n+|\t|\r|\s+\?)|(!--.*?--), , text) praticamente con questa sovrascrivo anche i simboli( ), come faccio a ad evitare che prenda anche il primo carattere del gruppo di ricerca?.. Grazie ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] espressioni regolari
Grazie mille!!. provo con beautifulSoup!!. :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] espressioni regolari
Ok grazie per i consigli, mi avete scoraggiato abbastanza con le regex!! :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] espressioni regolari
Grazie mille! , il problema forse era dell'interprete; Si ho provato ad isolare solo il pezzettino di codice dell'output, anche quello da solo mi dava errore! risolto con la 2.7! :) BeautifulSoup invece è proprio ciò che mi serviva funziona benissimo!!! Grazie mille ancora per il consiglio 2012/4/24 Simone Federici s.feder...@gmail.com 2012/4/24 Lorenzo Macchiavelli lmacchiave...@gmail.com mi restitituisce un errore: exceptions.TypeError:an integer is required Il codice che hai scritto? out_file = open(test.txt,w) out_file.write(prova\n) out_file.close() questo codice restituisce l'errore ( a me no) ? oppure è BeautifulSoup? forse manca come lo usi? prova questo: from BeautifulSoup import BeautifulSoupimport redoc = ['htmlheadtitlePage title/title/head', 'bodyp id=firstpara align=centerThis is paragraph bone/b.', 'p id=secondpara align=blahThis is paragraph btwo/b.', '/html']soup = BeautifulSoup(''.join(doc))print soup.prettify() ___ 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] [SEMI-OT] Una domanda di algebra di 2a elementare...
http://it.wikipedia.org/wiki/Megabyte Visto che siamo in OT-land... la 3. che parla dei dischetti mi ha fatto venire in mente che spesso (nonostante totalmente deprecato) si prendevano quelli da 720 e si formattavano a 1.44, spesso funzionava facendo il secondo buco con un punteruolo... ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] come chiudere in modo corretto le Window pygtk
On 23/05/12 12:56, Matteo Perini wrote: Ciao a tutti, Scusate la domanda banale ma sto cercando da un po di risolvere il seguente problema ma non ne vengo a capo. Ho una applicazione con una finestra principale che contiene dei semplici pulsanti. La pressione dei pulsanti mi fa aprire (a seconda del caso) una nuova Window che mi da' la possibilità di inserire del testo. Fino a qui tutto ok. Quando però chiudo la Window e successivamente provo a riaprirla per inserire dei nuovi dati ottengo: Forse questa può essere d'aiuto/ispirazione? http://faq.pygtk.org/index.py?file=faq10.021.htpreq=show Lorenzo File Gui.py, line 46, in on_btn_main_calib_clicked self.main_calibration(self) TypeError: 'gtk.Window' object is not callable e quindi non riesco a riaprire la finestra il codice della finestra in questione è: def main_calibration(self,widget,data=None): def calib1(self,entry): self.num = entry.get_text() print self.num self.main_calibration = gtk.Window(gtk.WINDOW_TOPLEVEL) self.main_calibration.set_position(gtk.WIN_POS_CENTER) self.main_calibration.set_title(Calibrazione) self.main_calibration.set_border_width(15) #self.main_calibration.connect(destroy, self.exit) hbox1 = gtk.HBox(True, 0) hbox2 = gtk.HBox(True, 0) vbox = gtk.VBox(True, 0) self.entry1 = gtk.Entry() self.entry1lab = gtk.Label(ciao) num=self.entry1.get_text() self.button1 = gtk.Button(Calibra) self.button1.connect(clicked,calib1, self.entry1) self.label1 = gtk.Label(Numero di acquisizioni valide:) hbox1.pack_start(self.label1, True, True, 5) hbox1.pack_start(self.entry1,True,True,5) hbox2.pack_start(self.button1, True, True, 5) vbox.pack_start(hbox1, True, False, 5) vbox.pack_start(hbox2, True, False, 5) self.main_calibration.add(vbox) self.main_calibration.show_all() gtk.main() Se avete avuto la pazienza di leggere fino a qui vi sarete accorti che c'è una linea commentata: #self.main_calibration.connect(destroy, self.exit) questa chiude sia la Window voluta che la finestra principale (cosa che non deve accadere). Ogni suggerimento su come risolvere questo piccolo problema è ben accetto. Grazie a tutti Matteo P ___ 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] leggere lo standard output di un programma esterno
On 30/05/12 18:57, Giovanni Marco Dall'Olio wrote: 2012/5/30 Matteo Perini perini.mat...@gmail.com mailto:perini.mat...@gmail.com Ciao a tutti, scrivo per chiedere un consiglio. Avrei bisogno di importare lo standard output di un programma c++ nel mio software (in python). Nelle ultime versioni di python (2.6) tutti i moduli per eseguire comandi esterni sono stati raccolti nella libreria subprocess. Leggi per esempio il warning in rosso nella documentazione di commands http://docs.python.org/library/commands.html , o PEP 0324 http://www.python.org/dev/peps/pep-0324/ Nel tuo caso la sintassi di subprocess è molto simile a quella di commands, ovvero: $: myoutput = subprocess.check_output('ls', '-a') $: print myoutput Su una macchina che era bloccata a python 2.5 avevo fatto così (scusate l'inglese): http://bpaste.net/show/30444/ Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] gestione della memoria
Ho iniziato da poco a scrivere script e piccoli programmi in python di elaborazione immagini. Utilizzo le librerie gdal per la conversione dei formati e per una lettura e scrittura di immagini da integrare in sistemi GIS. Ho un problema sulla gestione di matrici di grandi dimensioni. In particolare il programma va in errore a gestire 4 immagini 7000 x 7000 di tipo float. Posso chiaramente leggere una singola riga alla volta per ovviare a questo problema ma non posso utilizzare librerie come quelle mitiche scikit image dove sono presenti già funzioni che prendono in input immagini in forma di matrice. Come posso fare ? Ho provato ad aumentare la memoria virtuale della mia macchina ma il problema rimane sempre . cordiali saluti a tutti lorenzo bottai___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] gestione della memoria
Potrei postare il piccolo programma che gira solo con immagini piu' piccole e si blocca con matrici grandi, in modo che possiate vedere direttamente. Ovviamente utilizzo numpy e per la verità la definizione di matrici anche di grandi dimensioni non genera problemi il blocco avviene quando si richiama gdal e le altre. questo è il programmino: - import skimage.graph as graph from skimage import filter from skimage.morphology import watershed, is_local_maximum from scipy import ndimage import os, numpy, sys, time,math,csv from osgeo import gdal, ogr from osgeo.gdalconst import * from math import * from gdalconst import * startTime = time.time() os.chdir(r'c:\Users\lorenzo\lidar2') gdal.AllRegister() # open the image inDs1 = gdal.Open('conv_utm2m.tif',GA_ReadOnly) print 'legge immagine di convergenza' # get image size rows = inDs1.RasterYSize cols = inDs1.RasterXSize bands = inDs1.RasterCount transform = inDs1.GetGeoTransform() driver = gdal.GetDriverByName('GTiff') outDs1 = driver.Create('conv_massimo.tif', cols, rows, 1, GDT_Int32) outDs2 = driver.Create('conv_chiome.tif', cols, rows, 1, GDT_Int32) print 'righe', rows, 'colonne', cols, 'bande', bands driver1 = inDs1.GetDriver() convergenza = numpy.ones((rows,cols),numpy.float) massimi =numpy.zeros((rows,cols),numpy.int) chiome = numpy.zeros((rows,cols),numpy.float) inBand1 = inDs1.GetRasterBand(1) print 'leggo convergenza' convergenza = inBand1.ReadAsArray(0,0,cols,rows).astype(numpy.float) print ' fatto ..' print ' - calcolo con algoritmo watershed ---' print ' cerco il massimo locale sulla convergenza' massimi = is_local_maximum(convergenza) print ' numero in modo progressimo i massimi' markers = ndimage.label(massimi)[0] print ' allago le pozze i bacini' chiome = watershed(-convergenza, markers) print 'lette tutte le righe' outBand1 = outDs1.GetRasterBand(1) outBand2 = outDs2.GetRasterBand(1) # write the data outBand1.WriteArray(massimi, 0, 0) outBand1.FlushCache() stats1 = outBand1.GetStatistics(0, 1) outBand2.WriteArray(chiome, 0, 0) outBand2.FlushCache() stats2 = outBand2.GetStatistics(0, 1) outDs1.SetGeoTransform(transform) outDs2.SetGeoTransform(transform) outDs1 = None outDs2 = None inDs1 = None print 'script took', time.time() - startTime, 'seconds to run' - Messaggio originale - Da: Fabrizio Mancini mr.f...@gmail.com A: Discussioni generali sul linguaggio Python python@lists.python.it Inviato: Mercoledì, 6 giugno 2012 14:15:04 Oggetto: Re: [Python] gestione della memoria scusa forse per l'ovvietà, ma hai già provato a dare uno sguardo a numpy? http://numpy.scipy.org/ Ciao Fabrizio ___ 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] Uso di with
On 14/06/12 16:41, Marco Beri wrote: [...] raise Exception(Azz!) Ci vorrebbe una PEP per includerla nelle eccezioni predefinite :) Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] Verifica di aggiornamento File
Buongiorno a tutti, Ho realizzato uno script che partendo da un singolo file di template, ovvero un file html con markup definito da me; distribuisce parti di codice in vari file all'inerno di un cms. ma questo avviene solo alla pressione del tasto invio nella shell interattiva.. che durante la lavorazione di un progetto si moltiplica per centinaia di volte. la mia domanda è la seguente : è possibile che questo avvenga in automatico ad esempio ogni volta che salvo il template? come posso fare un listener sull'aggiornamento del file? Grazie in anticipo :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Ciao Grazie mille, per la cronaca alla fine ho risolto con questo script che fa solo uso delle librerie native.. import time, os f = open(rc:\...template.html,r) while True: line = f.readline() if not line: time.sleep(1) print( 'Nothing New') else: print ('Call Function: ') Ciao ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Ok !! Allora Vado di data ogni secondo :)! ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Ok Funziona perfettamente! :) OldFile = CurFile = def controlla(): global OldFile, CurFile if OldFile != CurFile: time.sleep(1) creaSkin() controlla() else: time.sleep(1) CurFile = time.ctime(os.path.getmtime(file)) controlla() def creaSkin(): ... ... OldFile = time.ctime(os.path.getmtime(file)) CurFile = time.ctime(os.path.getmtime(file)) Grazie per i consigli! :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
No! Lo sto già usando! Funziona perfettamente! :) 2012/6/21 Marco Beri marcob...@gmail.com Il giorno 21/giu/2012, alle ore 12:02, Lorenzo Macchiavelli lmacchiave...@gmail.com ha scritto: Ok Funziona perfettamente! :) OldFile = CurFile = def controlla(): global OldFile, CurFile if OldFile != CurFile: time.sleep(1) creaSkin() controlla() else: time.sleep(1) CurFile = time.ctime(os.path.getmtime(file)) controlla() def creaSkin(): ... ... OldFile = time.ctime(os.path.getmtime(file)) CurFile = time.ctime(os.path.getmtime(file)) No. Non funzionerà. Lo scoprirai da solo tra poco. ;-) ___ 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] Verifica di aggiornamento File
:) Si effettivamente nel pezzettino che ho postato , setto Old E Current assieme! cosa che non ho fatto nel codice che sta girando funzionante! ;D Lorenzo Macchiavelli web designer Il giorno 21 giugno 2012 12:16, Marco Beri marcob...@gmail.com ha scritto: Il giorno 21/giu/2012, alle ore 12:12, Lorenzo Macchiavelli lmacchiave...@gmail.com ha scritto: No! Lo sto già usando! Funziona perfettamente! :) Scommettiamo? -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ 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] Verifica di aggiornamento File
Lorenzo Macchiavelli web designer Il giorno 21 giugno 2012 12:34, Marco Beri marcob...@gmail.com ha scritto: Il giorno 21/giu/2012, alle ore 12:18, Lorenzo Macchiavelli lmacchiave...@gmail.com ha scritto: :) Si effettivamente nel pezzettino che ho postato , setto Old E Current assieme! cosa che non ho fatto nel codice che sta girando funzionante! ;D Il problema non è quello. Se usi il programma a lungo incontrerai il vero bug. Riduci il tempo di attesa dello sleep e lo incontri pure prima. Ciao. Marco. ___ 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] Verifica di aggiornamento File
Nooo! c'è un limite di chiamate ad una funzione? ancora sta girando!!.. Il giorno 21 giugno 2012 12:34, Marco Beri marcob...@gmail.com ha scritto: Il giorno 21/giu/2012, alle ore 12:18, Lorenzo Macchiavelli lmacchiave...@gmail.com ha scritto: :) Si effettivamente nel pezzettino che ho postato , setto Old E Current assieme! cosa che non ho fatto nel codice che sta girando funzionante! ;D Il problema non è quello. Se usi il programma a lungo incontrerai il vero bug. Riduci il tempo di attesa dello sleep e lo incontri pure prima. Ciao. Marco. ___ 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
[Python] Web App Django e Hosting
Ciao a tutti, vorrei provare a sviluppare una piccola web app, con django.. Dato che diversi di voi lo utilizzano, in alternativa a gestire un server; esistono dei servizi di hosting che offrono django tra le scelte? se si, voi cosa mi consigliereste?? Grazie Lorenzo Macchiavelli web designer ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Web App Django e Hosting
Perfetto Grazie ! Lorenzo Macchiavelli web designer ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] E' possibile creare eseguibili?
On 17/07/12 00:01, Marco Beri wrote: 2012/7/16 Ulysses Diamadis ulysses.diama...@gmail.com mailto:ulysses.diama...@gmail.com Vorrei sapere se è possibile creare eseguibili in Python, almeno per Windows (ma anche per Linux non mi dispiacerebbe) in modo da poter distribuire i programmi che faccio senza che gli altri installino l'interprete. Una domanda però: lo fai per dare una mano al cliente o per proteggere il tuo lavoro? Nel primo caso non ti serve preoccuparti più di tanto per Linux, normalmente è già installato l'interprete. Nel secondo caso... lascia perdere :-) [tendente OT] Almeno che tu non sia Skype: http://www.blackhat.com/presentations/bh-europe-06/bh-eu-06-biondi/bh-eu-06-biondi-up.pdf Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Web App Django e Hosting
Grazie! utile Lorenzo Macchiavelli web designer Il giorno 23 luglio 2012 10:44, Marco Dalla Stella m.dallaste...@gmail.comha scritto: Il 28 giugno 2012 20:38, Lorenzo Macchiavelli lmacchiave...@gmail.com ha scritto: Dato che diversi di voi lo utilizzano, in alternativa a gestire un server; esistono dei servizi di hosting che offrono django tra le scelte? se si, voi cosa mi consigliereste?? Se e` solo per testare un'applicazione, imho non ti conviene spendere in hosting. Puoi benissimo utilizzare un'instanza gratuita di heroku: http://heroku.com. Qui trovi un tutorial per fare il deploy di applicazioni Django: https://devcenter.heroku.com/articles/django Ciao, -- Marco Dalla Stella web: http://marco.dallastella.name twitter: http://twitter.com/mdallastella ___ 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
[Python] Eliminare carattere fine riga
Buongiorno a tutti. creando una tupla da un file di testo, mi ritrovo il fine riga \n listP = tuple(open(folfderList, 'r')) come posso eliminarlo in maniera non troppo macchinosa? Lorenzo Macchiavelli web designer ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Eliminare carattere fine riga
On 24/07/12 13:18, Marco Beri wrote: 2012/7/24 Walter Valenti waltervale...@yahoo.it mailto:waltervale...@yahoo.it stringa.rstrip() Giusto, ma meglio ricordare che vengono rimossi anche gli spazi bianchi, i tab, i CR (carriage return), i LF (line feed), i FF (form feed) e i VT (vertical tab): fwefw \n\r\t\f\v.rstrip() 'fwefw' Però accetta anche un argomento opzionale che limita la stringa strippata: asdasds \n\r\t\f\vmario.rstrip('\n') 'asdasds \n\r\t\x0c\x0bmario' asdasds \n\r\t\f\vmario.rstrip('mario') 'asdasds \n\r\t\x0c\x0b' C'è da tenere presente (se rilevante) il problema della stringa che rappresenta il newline su piattaforme diverse. Lorenzo. Ciao. Marco. -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ 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] Eliminare carattere fine riga
On 24/07/12 14:10, Marco Beri wrote: 2012/7/24 Lorenzo Sutton lorenzofsut...@gmail.com mailto:lorenzofsut...@gmail.com asdasds \n\r\t\f\vmario.rstrip('mario') 'asdasds \n\r\t\x0c\x0b' Questo non fa quello che pensi ma strippa tutte le m, le a, ecc. aaarroim.rstrip(mario) '' Grazie per la doverosa precisazione! In effetti strippa tutte le m, a ecc. a destra mario sono mario hai capito o no che sono maarioom.rstrip('mario') 'mario sono mario hai capito o no che sono ' usando il primo carattere non matchato del set dato come argomento come 'confine' a destra e/o sinistra a seconda del tipo di strip 'aaaiiirrrMrmmmo'.rstrip('mario') 'aaaiiirrrM' 'aaaiiirrrMrmmmo'.lstrip('mario') 'Mrmmmo' 'aaaiiirrrMrmmmo'.strip('mario') 'M' Nel caso delle \n quindi direi che .rstrip('\n') strippa tutte le \n a destra fino a qualcosa che non sia una \n: 'e adesso basta co sto povero mario!\n\n\n\n\n\n\n'.rstrip('\n') 'e adesso basta co sto povero mario!' Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Eliminare carattere fine riga
Grazie! deve girare solo su windows, con rstrip su questo : fine_pagina inizio_pagina invia_pagina menu_canali testo spa zi a to listP = tuple(open(folfderList,'r').read().rstrip('\n')) ('f', 'i', 'n', 'e', '_', 'p', 'a', 'g', 'i', 'n', 'a', '\n', 'i', 'n', 'i', 'z', 'i', 'o', '_', 'p', 'a', 'g', 'i', 'n', 'a', '\n', 'i', 'n', 'v', 'i', 'a', '_', 'p', 'a', 'g', 'i', 'n', 'a', '\n', 'm', 'e', 'n', 'u', '_', 'c', 'a', 'n', 'a', 'l', 'i', '\n', 't', 'e', 's', 't', 'o', ' ', 's', 'p', 'a', ' ', 'z', 'i', ' ', 'a', ' ', 't', 'o') invece con split: listP = tuple(open(folfderList,'r').read().split('\n')) ('fine_pagina', 'inizio_pagina', 'invia_pagina', 'menu_canali', 'testo spa zi a to') Cosa ho combinato con rstrip? Ciao Lorenzo Macchiavelli web designer ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Eliminare carattere fine riga
On 24/07/12 15:27, Lorenzo Macchiavelli wrote: Grazie! deve girare solo su windows, con rstrip su questo : fine_pagina inizio_pagina invia_pagina menu_canali testo spa zi a to listP = tuple(open(folfderList,'r').read().rstrip('\n')) ('f', 'i', 'n', 'e', '_', 'p', 'a', 'g', 'i', 'n', 'a', '\n', 'i', 'n', 'i', 'z', 'i', 'o', '_', 'p', 'a', 'g', 'i', 'n', 'a', '\n', 'i', 'n', 'v', 'i', 'a', '_', 'p', 'a', 'g', 'i', 'n', 'a', '\n', 'm', 'e', 'n', 'u', '_', 'c', 'a', 'n', 'a', 'l', 'i', '\n', 't', 'e', 's', 't', 'o', ' ', 's', 'p', 'a', ' ', 'z', 'i', ' ', 'a', ' ', 't', 'o') invece con split: listP = tuple(open(folfderList,'r').read().split('\n')) ('fine_pagina', 'inizio_pagina', 'invia_pagina', 'menu_canali', 'testo spa zi a to') Cosa ho combinato con rstrip? Niente, il problema non è rstrip: Prova a vedere cosa succede senza il rstrip... Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] posizionare il cursore
On 28/08/12 21:59, csplit wrote: Ciao a tutti. Voglio usare Python 3.1.2 secondo il paradigma della programmazione strutturata e ho il problema di posizionare il cursore in termini di riga e colonna nella finestra grafica aperta da IDLE. Cerco qualcosa che assomigli a LOCATE CSRLIN POS LPOS del vecchio qbasic. Es.: leggo un numero da tastiera: np=input(Numero? ) elaboro e stampo il risultato: print (giocata, ,np ,ris) voglio ottenere questo: Numero? 12345 1 12345 I o o ^ _qui_ voglio posizionarmi _qui_ ma non riesco. Su un terminale (linux) che riconosca gli escape VT100 [1][2] potresti fare un hack del genere (Python 2.7): prompt_string = Numero: np = raw_input(prompt_string) right_pad = len(prompt_string) + len (np) move_right_esc = \033[%dC % right_pad line_up_esc = \033[1A print line_up_esc + move_right_esc, * 2, 1 , np,o ,o Ma forse è meglio curses come molti hanno già consigliato :) Lorenzo. [1] http://it.wikipedia.org/wiki/VT100 [2] http://ascii-table.com/ansi-escape-sequences-vt-100.php E' possibile? Se sì, come? Ciao e grazie. ___ 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] posizionare il cursore
On 29/08/12 18:50, csplit wrote: Il 29/08/2012 12:31, Lorenzo Sutton ha scritto: On 28/08/12 21:59, csplit wrote: Ciao a tutti. Voglio usare Python 3.1.2 secondo il paradigma della programmazione strutturata e ho il problema di posizionare il cursore in termini di riga e colonna nella finestra grafica aperta da IDLE. Cerco qualcosa che assomigli a LOCATE CSRLIN POS LPOS del vecchio qbasic. Es.: leggo un numero da tastiera: np=input(Numero? ) elaboro e stampo il risultato: print (giocata, ,np ,ris) voglio ottenere questo: Numero? 12345 1 12345 I o o ^ _qui_ voglio posizionarmi _qui_ ma non riesco. Su un terminale (linux) che riconosca gli escape VT100 [1][2] potresti fare un hack del genere (Python 2.7): prompt_string = Numero: np = raw_input(prompt_string) right_pad = len(prompt_string) + len (np) move_right_esc = \033[%dC % right_pad line_up_esc = \033[1A print line_up_esc + move_right_esc, * 2, 1 , np,o ,o Ecco, questa è la soluzione che cercavo, peccato che non riesca a farla funzionare nella finestra di IDLE. Perché per forza la finestra IDLE? Sarà questo l'ambiente che userai realmente quando rilascerai il tuo programma? Solo per curiosità :) Ma forse è meglio curses come molti hanno già consigliato :) Lorenzo. Sì, mi sto rassegnando all'idea di usare ncurses, [1] http://it.wikipedia.org/wiki/VT100 Ottimo link: [2] http://ascii-table.com/ansi-escape-sequences-vt-100.php E' possibile? Se sì, come? Ciao e grazie. ___ 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] togliere spazi finali da ogni singola riga di un testo
On 02/09/12 09:18, Federico Bruni wrote: Buongiorno a tutti s = 'Ciao mondo' s = s.rstrip() print(s) Ciao mondo Questo funziona. Se invece ho una stringa con più linee ho dei problemi. Ho provato questo ma non va: s = 'Ciao mondo\nsono un newbie ' for line in s: s = line.rstrip() print(s) Ha cancellato tutto. Dove sbaglio? Ciao, partendo dal tuo iniziale tentativo mi permetto di provare un approccio un po' diverso a quelli suggeriti: def endstrip(s): Strip the end of the string, like rstrip but also but also multiline for i in xrange(len(s)-1,0,-1): if not s[i].isspace(): return s[0:i+1] endstrip(Ciao \nSono un volenteroso) 'Ciao \nSono un volenteroso' endstrip(a b c d e ) 'a b c d e' endstrip(\n\n) endstrip(\n\nabcde\n\n) '\n\nabcde' Ovviamente non è strettamente necessario metterlo in una funzione :) Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] cambiare nome di variabile in un ciclo
On 10/09/12 09:27, Matteo Perini wrote: ciao a tutti. Vorrei chiedervi una mano per risolvere un problema a cui non ho trovato soluzione. Come posso fare ad assegnare un nome di variabile diverso per ogni iterazione in un ciclo (for per esempio). Mi spiego meglio... Avrei bisogno di fare una cosa del genere: for i in range(20,100): self.label_(i).set.text('Ciao') Allora probabilmente vuoi una lista: for i in range(20, 100): self.label_list[i].set.text('Ciao') Lorenzo P.S. ma è pyGtk? Perché nel caso non mi torna il set.text visto che sarebbe set_text) ^ | Al posto di questa i vorrei mettere il numero corrispondente. E' possibile? La funzione lambda potrebbe aiutarmi in questo caso??? Ho guardato qualche esempio ma non sono riuscito a risolvere Grazie Matteo P ___ 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] Ciclo for e variabili passate per riferimento
On 14/09/12 22:12, Francesco Maida wrote: Il giorno 13 settembre 2012 23:10, Daniele Zambelli daniele.zambe...@gmail.com mailto:daniele.zambe...@gmail.com ha scritto: Altre due soluzioni: def russianizza(nome): return nome+'sky' Per la parità, non dovrebbe essere qualcosa come: def russianizza(nome): nomi_maschili_terminanti_in_a = ['Luca','Andrea','Barabba'] # etc. if (nome[-1:] == 'a') and (nome not in m nomi_maschili_terminanti_in_a): return nome[:-1] + 'ska' else: return nome + 'sky' (certo non funziona con nomi femminili tipo Chantal, Christal, Betty, etc. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] da lista di coppie a dict con lista di valori
On 26/09/12 17:45, Marco De Paoli wrote: Il giorno 26 settembre 2012 17:37, Stefano Dal Pra s.dal...@gmail.com mailto:s.dal...@gmail.com ha scritto: Un altro modo puo' essere: base = [(1, 100), (1, 200), (3, 100)] categories = [1, 2, 3] d = {} x = [d.setdefault(x[0],[]).append(x[1]) for x in base] + [ d.setdefault(n,[]) for n in categories ] d {1: [100, 200], 2: [], 3: [100]} sì, direi che è parente stretto del mio iniziale nella seconda lista mi hai giustamente fatto notare che if not k in result non è necessaria rimangono i dubbi iniziali che ha detto Marco B (qui addirittura c'è una somma che non è una somma e un assegnazione che non è un assegnazione) Lo so che per alcuni è un quasi un taboo, ma mi chiedo...per qualche riga in più non è però più leggibile il doppio for? result = {} for i in categories: result[i] = [] for k,v in base: if k == i: result[k].append(v) Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] regex per modificare una stringa
On 11/11/12 19:26, Daniele Zambelli wrote: Il giorno 11 novembre 2012 19:11, Manlio Perillo manlio.peri...@gmail.com mailto:manlio.peri...@gmail.com ha scritto: [...] Perchè mai vorresti utilizzare le regex invece di un parser XML? Mi sembrava potesse essere più semplice per questa operazione, ma mi sono scontrato con il problema che ho esposto e quindi mi è sorto il dubbio. Tu quindi mi consigli di lavorare sull'albero XML. Fin'ora ho lavorato con alberi XML in sola lettura qui si tratta di modificarli... Non sono pratico, ma farò un po' di tentativi Potresti cominciare da qui: http://wiki.python.org/moin/PythonXml Io personalmente trovo sempre lxml [1] ottimo per lavorare con XML. Lorenzo [1] http://lxml.de/ ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] dongle con penna usb
On 31/12/12 00:34, Vittorio Spina wrote: Ciao a tutti, mi chiedevo se qualcuno avesse avuto esperienza con le chiavette usb utilizzate come dongle per licenziare un'applicazione. Le iLok [1] sono usatissime per i software audio e musicali [2] C'è chi le ama per la facilità di gestire le licenze e la portabilità [3], c'è chi le odia (la maggior parte di professionisti, amici e colleghi con cui ne ho parlato) perché 'fregano' una porta usb costantemente, perché possono staccarsi se stai facendo una performance live o una registrazione, e perché spesso non interagiscono bene con il software e/o il sistema. [4] [1] http://www.ilok.com/ [2] http://www.soundonsound.com/sos/jul08/articles/dongles.htm [3] http://www.gearslutz.com/board/7686620-post14.html [4] Questo e i commenti, anche se un po' vecchio, può essere interessante: http://studionebula.com/blog/2007/12/02/why-i-boycott-products-that-use-paceilok-and-why-you-should-too Qualcuno sa darmi qualche dritta? Moduli, metodi, o altro? grazie Vittorio ___ 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] Glitch
Non ho resistito!! :) Lorenzo Macchiavelli web designer Il giorno 04 gennaio 2013 14:54, Marco Beri marcob...@gmail.com ha scritto: Chi indovina cosa stampa l'ultima riga di questo snippet senza eseguirlo? Si accettano tentativi :-) x = ([],) try: x[0] += [3] except TypeError: print += raised TypeError print x =, x Ciao. Marco. -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ 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] Glitch
Sinceramente non l'ho compreso!! :) Lorenzo Macchiavelli web designer Il giorno 04 gennaio 2013 15:09, Daniele Varrazzo p...@develer.com ha scritto: On 2013-01-04 14:54, Marco Beri wrote: Chi indovina cosa stampa l'ultima riga di questo snippet senza eseguirlo? Si accettano tentativi :-) Credo di averlo letto, nominato come uno strano quirk di quando aggiunsero gli operatori inplace (Python 2.0 o 2.1...) La tupla bestemmia perché non accetta assegnamento ma la lista viene estesa lo stesso. -- Daniele Varrazzo - Develer S.r.l. http://www.develer.com __**_ Python mailing list Python@lists.python.it http://lists.python.it/**mailman/listinfo/pythonhttp://lists.python.it/mailman/listinfo/python ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] [DERAIL] Re: Glitch
On 04/01/13 14:54, Marco Beri wrote: [...] Leggendo l'oggetto pensavo si trattasse di _musica_ Glitch [1] in Python... Qualcosa con la libreria standard si può fare ;) http://paste.debian.net/222041/ Lorenzo. [1] http://en.wikipedia.org/wiki/Glitch_music PS. Se davvero qualcuno lo prova, *abbasate* il volume quando ascoltate il .wav generato ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Itertools x sport
On 16/01/13 12:00, Gianni wrote: Buongiorno, sto cercando la via più pratica per popolare il database di uno script per la gestione di campionati di calcio*. Dovrei associare le possibili combinazioni di partite (380) alle giornate (38) facendo in modo che ogni squadra giochi una sola partita per giornata. Quindi, ho 2 liste: 20 squadre e 38 giornate. Le 380 partite le ottengo con permutations: partite = itertools.permutations(squadre, 2) Fin qui ci arrivo ma vado in palla quando cerco di associare le partite alle giornate. Scusa ma non basta dividere le partite (380 permutazioni) per dieci? Lorenzo. In pratica vorrei una lista di liste/tuple dove la coppia squadra/giornata sia unica. tipo: [[squadra1, squadra2, giornata1], [squadra1, squadra3, giornata2], ..., [squadra2, squadra1, giornata20],...] Credo che itertools.product() possa essermi utile ma prima mi prendo una pausa e un analgesico, magari nel frattempo qualcuno di voi mi suggerisce qualcosa tipo ipertools.campionatodicalcioitaliano(20). Scherzo ma ho appena 'scoperto' gli itertools e non mi sorprenderebbe. * in realtà si tratta di torneo di tennis parallelo al campionato di calcio e vi consiglio di organizzarvelo: è divertente, poco faticoso, economico, vi tiene in forma e lontano dal monitor. Ciao. -- Gianni ___ 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] Itertools x sport
On 16/01/13 12:20, Lorenzo Sutton wrote: On 16/01/13 12:00, Gianni wrote: Buongiorno, sto cercando la via più pratica per popolare il database di uno script per la gestione di campionati di calcio*. Dovrei associare le possibili combinazioni di partite (380) alle giornate (38) facendo in modo che ogni squadra giochi una sola partita per giornata. Quindi, ho 2 liste: 20 squadre e 38 giornate. Le 380 partite le ottengo con permutations: partite = itertools.permutations(squadre, 2) Fin qui ci arrivo ma vado in palla quando cerco di associare le partite alle giornate. Scusa ma non basta dividere le partite (permutazioni) per dieci? Certo che no, scusa avevo letto male :| Lorenzo. In pratica vorrei una lista di liste/tuple dove la coppia squadra/giornata sia unica. tipo: [[squadra1, squadra2, giornata1], [squadra1, squadra3, giornata2], ..., [squadra2, squadra1, giornata20],...] Credo che itertools.product() possa essermi utile ma prima mi prendo una pausa e un analgesico, magari nel frattempo qualcuno di voi mi suggerisce qualcosa tipo ipertools.campionatodicalcioitaliano(20). Scherzo ma ho appena 'scoperto' gli itertools e non mi sorprenderebbe. * in realtà si tratta di torneo di tennis parallelo al campionato di calcio e vi consiglio di organizzarvelo: è divertente, poco faticoso, economico, vi tiene in forma e lontano dal monitor. Ciao. -- Gianni ___ 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] Itertools x sport
On 16/01/13 21:54, Carlo Miron wrote: Il 16 gennaio 2013 12:00, Gianni giann...@gmail.com ha scritto: Buongiorno, sto cercando la via più pratica per popolare il database di uno script per la gestione di campionati di calcio*. http://it.wikipedia.org/wiki/Algoritmo_di_Berger? Ganzo! ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Itertools x sport
On 17/01/13 15:41, Gianni wrote: Come promesso, a voi il codice dello script http://cdn.dinoia.eu/zip/tornei.zip l'algoritmo di Berger andrebbe nel reduce.py, ma per ora ha bassa priorità. Partendo dal suggerimento sull'algoritmo di Berger da parte di Carlo Miron, avevo pensato a questo: http://bpaste.net/show/70980/ La giornata 13 si annuncia particolarmente avvincente :) Lorenzo. Avrei un'altra domanda da porvi, questa volta meno legata a python ma al concetto di open source in generale: E' giusto, etico, professionale, insomma va bene rendere opensource codice come questo? Non danneggia chi lo fa di professione? Finché si tratta del codice di python, l'open source ha solo risvolti positivi: i professionisti migliorano uno strumento che gli serve per la loro professione. Mentre il mio script serve ai centri sportivi, è un prodotto finito. Non so se ho reso l'idea.. -- Gianni ___ 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
[Python] [OT]: Software libero, open source etc. [ERA] Re: Itertools x sport
On 17/01/13 15:41, Gianni wrote: [...] Avrei un'altra domanda da porvi, questa volta meno legata a python ma al concetto di open source in generale: E' giusto, etico, professionale, insomma va bene rendere opensource codice come questo? Se leggi/senti ciò che dice RMS (Richard Matthew Stallman) fondatore del movimento per il software libero, ti direbbe esattamente l'opposto, che è non etico creare software chiuso. Non solo, sempre Stallman (e altri) fanno una distinzione tra Software Libero e Open Source, considerando il secondo un concetto più blando ed edulcorato della loro filosofia iniziale [1] Non danneggia chi lo fa di professione? Finché si tratta del codice di python, l'open source ha solo risvolti positivi: i professionisti migliorano uno strumento che gli serve per la loro professione. Mentre il mio script serve ai centri sportivi, è un prodotto finito. Non se il centro sportivo - volesse poi collegarsi a un database per recuperare il nome delle squadre - o se volesse aggiungere una parte che in base ai risultati calcoli di volta in volta le probabilità per le giornate successive - o aggiungere la classifica dei cannonieri (scusa non seguo affatto il calcio, esiste?) - creare un sistema che stampi in automatico i risultati delle partite e i calendari - aggiungere al modulo che stampa un sistema che decida se stampare a colori o in bianco e nero a seconda dell'inchiostro presente nei toner e il numero di copie da stampare - ... E magari qualcuna di queste funzionalità è stata già creata da qualcuno per qualcosa di totalmente diverso... Non so se ho reso l'idea.. Neanche io - ma lo spero ;) Lorenzo. [1] http://www.gnu.org/philosophy/open-source-misses-the-point.it.html ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] [OT]: Software libero, open source etc. [ERA] Re: Itertools x sport
On 18/01/13 08:35, Gianni wrote: 2013/1/17 Lorenzo Sutton lorenzofsut...@gmail.com: [...] Tutto questo mi era già abbastanza chiaro e lo condividevo anche prima ma visto che l'argomento 'tira', ti invito a leggere l'attualità http://www.huffingtonpost.it/2013/01/17/ovviamente-gratis-le-parole_n_2495934.html Ci sarebbero tantissime riflessioni da fare, ma credo che questo sia davvero troppo OT qui :) Quello è il Sindaco di una delle città più importanti d'Italia, messo lì dal blogger più famoso d'Italia, dal paladino del web. Mi sarei aspettato dal quel Sindaco parole diverse. Qui, la gente fa confusione: opensource, free, gratis, volontariato, partecipazione, volemose bene.. Poi dicono che la nostra è la prima generazione che sta peggio della precedente. Concordo sulla confusione, mistificazione ecc. Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Gioco OldMaid, metodo StampaMani().
Ciao un consiglio, è buona norma aggiungere due ritorni a capo alla fine di una def o una classe... così da rendere il codice più compensibile! Lorenzo Macchiavelli web designer Il giorno 27 marzo 2013 16:26, Gabriel Battaglia (Kriyaban) iz4...@libero.it ha scritto: Buongiorno a tutti. Torno con una richiesta d'aiuto, le virgolette sono per sdrammatizzare l'enfasi delle parole che è certamente eccessiva. Diligentemente sto seguendo il libro di A.A.V.V Pensare da informatico, che trovo estremamente ben fatto e utile. I capitoli 15 e 16, come forse ricorderete dalla preistoria della vostra esperienza formativa, affrontano le classi e propongono un meraviglioso esempio per impararle e famigliarizzarsi con esse: il gioco di carte OldMaid. Ho riscritto (Copiandolo) tutto il codice, il che mi aiuta a memorizzarlo e comprenderlo, tuttavia, arrivato al momento di svolgere lìultimo esercizio, mi trovo in difficoltà. - Per funzionare infatti, il programma va completato con la scrittura di un metodo .StampaMani() volutamente lasciato alla perizia degli studenti... Una perizia però... che evidentemente ancora non posseggo. Qui sotto c'è il listato del programma. Il Metodo che dovrei scrivere è indicato dal tag #QUI, mentre le ultime righe dello script sono un'aggiunta mia di scarsa rilevanza. La domanda è: a quale classe deve appartenere il metodo .StampaMani()? Io pensavo dovesse essere della classe GiocoOldMaid, figlia a propria volta di GiocoDiCarte. Se lo scrivo lì tuttavia, non riesco ad accedere alla variabile che contiene il nome del giocatore di turno: self.Nomi non definito in GiocoOldMaid. Probabilmente mi sto confondendo, la mia famigliarità con questo modo di programmare è appena abbozzata. Qualche anima gentile, :) mi darebbe una spintina intellettuale? Grazie. *** # Dal capitolo 15 di Pensare da Informatico. class Carta: ListaSemi = [Fiori, Quadri, Cuori, Picche] ListaRanghi = [impossibile, Asso, 2, 3, 4, 5, 6,\ 7, 8, 9, 10, Jack, Regina, Re] def __init__(self, Seme=0, Rango=0): self.Seme = Seme self.Rango = Rango def __cmp__(self, Altro): # controlla il seme if self.Seme Altro.Seme: return 1 if self.Seme Altro.Seme: return -1 # se i semi sono uguali controlla il rango if self.Rango Altro.Rango: return 1 if self.Rango Altro.Rango: return -1 # se anche i ranghi sono uguali le carte sono uguali! return 0 def __str__(self): return (self.ListaRanghi[self.Rango] + di + self.ListaSemi[self.Seme]) #Ora l'oggetto carta e' creato. # Ora il Mazzo. class Mazzo: def __init__(self): self.Carte = [] for Seme in range(4): for Rango in range (1,14): self.Carte.append(Carta(Seme, Rango)) def __str__(self): s = for i in range(len(self.Carte)): s = s + *i + str(self.Carte[i]) + \n return s def Mescola(self): import random NumCarte = len(self.Carte) for i in range(NumCarte): j = random.randrange(i,NumCarte) self.Carte[i], self.Carte[j] = self.Carte[j], self.Carte[i] def RimuoviCarta(self, Carta): if Carta in self.Carte: self.Carte.remove(Carta) return 1 else: return 0 def PrimaCarta(self): return self.Carte.pop() def EVuoto(self): return (len(self.Carte) == 0) def Distribuisci(self, ListaMani, NumCarte=999): NumMani=len(ListaMani) for i in range(NumCarte): if self.EVuoto: break Carta = self.PrimaCarta() Mano = ListaMani(i % NumMani) Mano.AggiungiCarta(Carta) class Mano(Mazzo): def __init__(self, Nome=): self.Carte = [] self.Nome = Nome def AggiungiCarta(self, Carta): self.Carte.append(Carta) def __str__(self): s = La mano di +self.Nome if self.EVuoto(): s += E' vuota\n else: s += Contiene queste carte:\n return s + Mazzo.__str__(self) class GiocoDiCarte: def __init__(self): self.Mazzo = Mazzo() self.Mazzo.Mescola() class ManoOldMaid(Mano): def RimuoviCoppie(self): Conteggio = 0 CarteOriginali = self.Carte[:] for CartaOrig in CarteOriginali: CartaDaCercare = (3-CartaOrig.Seme, CartaOrig.Rango) if CartaDaCercare in self.Carte: self.Carte.remove(CartaOrig) self.Carte.remove(**CartaDaCercare) print Mano di %s : %s elimina %s %\ self.Nome, CartaOrig, CartaDaCercare Conteggio += 1 return Conteggio class GiocoOldMaid(GiocoDiCarte): def StampaMani(self): #QUI # Metodo per stampare le mani. print Mano di ,self.Nomi, :\n for i in range
Re: [Python] aiuto espressioni regolari
http://www.amazon.it/s/ref=nb_sb_noss/279-0566484-1177601?__mk_it_IT=%C3%85M%C3%85Z%C3%95%C3%91url=search-alias%3Dapsfield-keywords=marco%20beri%20espressioni%20regolari Ciao :) Lorenzo Macchiavelli web designer Il giorno 23 aprile 2013 15:07, Michele Gatti mgsoluzi...@gmail.com ha scritto: Io l'ho cercato il suddetto libro e non l'ho trovato :( [image: logo] *Michele Gatti* *Per imparare un nuovo linguaggio di programmazione ci vuole un sacco di lavoro, e le persone non imparano Python perché questo permetterà loro di avere un lavoro, ma perché amano genuinamente programmare e non sono soddisfatte con i linguaggi che già conoscono.* [image: Flickr] http://www.flickr.com/photos/gmikele/ [image: LinkedIn] http://it.linkedin.com/in/michelegatti [image: Tumblr]http://tryexcept.tumblr.com/ [image: pinterest] http://pinterest.com/gmikele/ Get a signature like this: http://r1.wisestamp.com/r/landing?promo=29dest=http%3A%2F%2Fwww.wisestamp.com%2Femail-install%3Futm_source%3Dextension%26utm_medium%3Demail%26utm_campaign%3Dpromo_29 Click here!http://r1.wisestamp.com/r/landing?promo=29dest=http%3A%2F%2Fwww.wisestamp.com%2Femail-install%3Futm_source%3Dextension%26utm_medium%3Demail%26utm_campaign%3Dpromo_29 Il giorno 23 aprile 2013 14:55, Marco Beri marcob...@gmail.com ha scritto: 2013/4/23 Marco De Paoli depao...@gmail.com Il giorno 23 aprile 2013 14:07, Valerio Pachera siri...@gmail.com ha scritto: Ok, ora mi è chiaro. Marco Beri, Espressioni Regolari, Apogeo p.37 :-) :D -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- Michele Gatti MG Soluzioni Informatiche ___ 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
[Python] [OT]: TRe: problema di licenze...
Ciao, Aggiungo qualcosa alle informazioni che ti hanno già dato. L'email è un po' lunga ma spero dia alcuni spunti utili, per questo ho aggiunto l'OT. On 08/09/2013 10:18, Perini Matteo wrote: Ciao a tutti, una semplice domanda per la lista. Vorrei rilasciare del codice in con licenza open ma al suo interno utilizzo: import gtk # GNU LGPL [...] C'è una considerazione da fare sul fatto che molte di queste sono librerie 'standard' o comunque distribuite da terze parti. Questo acquista particolare rilevanza in Python perché non è un linguaggio compilato. Mi spiego: se tu usi pyGtk, tipicamente l'utente del tuo programma lo otterrà ad es. attraverso la propria distribuzione (che ne so, apt-get install pygtk...), attraverso un installer ecc. e non da te. In questo caso puoi usare la licenza che vuoi, e la licenza dei moduli ti interessa relativamente. Diventa invece più rilevante se: 1. Modifichi uno dei moduli (supponiamo ad esempio che tu faccia una patch a nympy che serve per far funzionare il tuo programma). Questo è sicuramente lo scenario più rilevante. A quel punto a seconda della licenza, hai o meno una serie di obblighi e implicazioni sia rispetto l'uso che ne fai nella tua applicazione, sia rispetto alle modifiche che hai fatto rispetto i moduli originari. Un esempio che mi piace citare in questo senso è il 'repository' di codice open source che la Sony ha online con tutte le librerie/applicazioni (L)GPL che usa nei suoi device (tipo linux kernel embedded, busybox) in versioni customizzate [1] 2. Decidi di distribuire tu (ad esempio creando un mega-installer) tutti i moduli necessari in forma binaria... Qui il discorso varia a seconda delle licenze. In realtà nel caso non si verifichi la condizione 1. non ci dovrebbero essere grossi problemi (lo scenario è in qualche modo analogo alle distribuzioni Linux) - per la GPL tendenzialmente il principio è che i sorgenti debbano essere 'facilmente' rintracciabili e ottenibili. In entrambi gli scenari diventa anche rilevante il discorso economico: cioè se fai pagare e il modello di pagamento per ottenere il software. Ricordo che la GPL _permettere_ di vendere software a scopo di lucro [2] Qualcuno mi potrebbe dare una dritta su che licenza devo/posso utilizzare in un contesto simile. Sono rimasto stupito di vedere sul sito di numpy ad esempio è riportata [0] BSD License ma se clicco sul link License [1] trovo: Copyright © 2005-2013, NumPy Developers. All rights reserved. Aggiungo solo una cosa a ciò che ha già scritto Raffaele: tendenzialmente il copyright è automaticamente assegnato a un autore(i) nel momento in cui crea qualcosa, è la paternità dell'opera. Chiaro l'attribuzione e la salvaguardia di questa paternità è un altro paio di maniche che porta la discussione ancora più OT. A presto, Lorenzo. [1] https://products.sel.sony.com/opensource/source_tv.shtml [2] http://www.gnu.org/licenses/gpl-faq.it.html#DoesTheGPLAllowMoney ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Scelta di un IDE
On 12/09/2013 17:29, Andrea Lomasto wrote: Che IDE usare per python ? Sto leggendo pensare da informatico e vorrei usare da subito un ide Nessuno ha ancora citato (g)vim? :) Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Scelta di un IDE
On 12/09/2013 20:11, Daniele Palmese wrote: Il giorno 12 settembre 2013 19:41, Karim lemieli...@gmail.com mailto:lemieli...@gmail.com ha scritto: Inoltre vim lo puoi eseguire sul server tramite SSH, se poi aggiungi tmux Hai detto una gran verità, da non sottovalutare. Infatti non sempre avremmo a disposizione il nostro IDE o editor preferito, ed anzi per interventi urgenti e vitali per la nostra sopravvivenza accedere via SSH sarà l'unica opzione possibile. A mio avviso è necessario apprendere l'utilizzo di un editor/IDE in console, a prescindere da quelli che sono i gusti e le abitudini personali. Quoto in pieno +1 per vim anche via ssh. Mi sembra anche giusto segnalare che quando si è in modalità più pantofolara con un accesso SSH si può anche comodamente fare il mount con SSHFS [1] sul proprio sistema e usare ad es. _g_vim ;-) Lorenzo [1] http://fuse.sourceforge.net/sshfs.html ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Scelta di un IDE
On 13/09/2013 14:57, Giorgio Zoppi wrote: Sta discussione sta diventando sterile. A me ha fatto venire in mente... come creare un generatore di messaggi al contrario (e un decodificatore)? A me veniva in mente così def reverse_lines(the_string): return(\n.join(the_string.split(\n)[::-1])) message = Messaggio. Poco originale vero? print(message_reverse) vero? originale Poco Messaggio. print(reverse_lines(message_reverse)) Messaggio. Poco originale vero? Il giorno 13 settembre 2013 13:42, Marco Beri marcob...@gmail.com mailto:marcob...@gmail.com ha scritto: Marco. Ciao. ragione! hai Quanto Il giorno 13/set/2013 12:21, Giovanni Porcari giovanni.porc...@softwell.it mailto:giovanni.porc...@softwell.it ha scritto: G. quoting top è il che non sopporto una cosa c'è Se Il giorno 13/set/2013, alle ore 11:56, Carlos Catucci carlos.catu...@gmail.com mailto:carlos.catu...@gmail.com ha scritto: 2013/9/13 Matteo Boscolo matteo.bosc...@boscolini.eu mailto:matteo.bosc...@boscolini.eu ma poi perché mi cazziate sempre .. ? Perche' fai top quoting ;P Carlos -- Somos los que amasan, sin embargo no tenemos pan, somos los que cavan el carbón, sin embargo tenemos frío somos los que no tienen nada, y estamos viniendo a tomar el mundo. Tassos Livaditis (Poeta greco, 1922, 1988) ___ Python mailing list Python@lists.python.it mailto:Python@lists.python.it http://lists.python.it/mailman/listinfo/python ___ Python mailing list Python@lists.python.it mailto:Python@lists.python.it http://lists.python.it/mailman/listinfo/python ___ Python mailing list Python@lists.python.it mailto:Python@lists.python.it http://lists.python.it/mailman/listinfo/python -- Quiero ser el rayo de sol que cada día te despierta para hacerte respirar y vivir en me. Favola -Moda. ___ 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] l'amore per il pitone
On 17/09/13 19:32, Piergiuliano Bossi wrote: [...] Ok, provo con un'altra: qual e' il modo migliore in python di contare tutti gli elementi di una lista che soddisfano un criterio? 2 esempi: 1) contare tutti gli elementi piu' grandi di 5 2) contare tutti gli elementi uguali al massimo A me viene cosi': a = [2, -4, 27, 44, 13, 0] len(x for x in a if x 5) Traceback (most recent call last): File stdin, line 1, in module TypeError: object of type 'generator' has no len() len([x for x in a if x 5]) 3 list_max = max(a) len([x for x in a if x == list_max]) 1 len([x for x in a if x == max(a)]) # anche cosi' insomma 1 Domanda, forse naive. A parte la soddisfazione/divertimento di costruire dei one-liner qual è il vero vantaggio di tale super-sinteticità? perché non scrivere il codice per esteso? Esempio: number_list = [2, -4, 27, 44, 13, 0] up_limit = 5 counter = 0 for i in number_list: ... if i up_limit: ... counter += 1 ... counter 3 Inserito in un contesto più complesso, così non un po' più chiaro? Ciao, Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] l'amore per il pitone
On 17/09/13 23:19, Piergiuliano Bossi wrote: 2013/9/17 Lorenzo Sutton lorenzofsut...@gmail.com mailto:lorenzofsut...@gmail.com Domanda, forse naive. A parte la soddisfazione/divertimento di costruire dei one-liner qual è il vero vantaggio di tale super-sinteticità? perché non scrivere il codice per esteso? Esempio: number_list = [2, -4, 27, 44, 13, 0] up_limit = 5 counter = 0 for i in number_list: ... if i up_limit: ... counter += 1 ... counter 3 Inserito in un contesto più complesso, così non un po' più chiaro? :D N risposte, tutte vere dal mio punto di vista, alcune estremamente soggettive: 1) 1000 anni di lavoro in Java ti portano a idolatrare la sinteticita' e detestare la verbosita' 2) meno codice scrivo e meno bugs ho 3) meno codice scrivo e piu' devo alzare il livello di astrazione e piu' alzo anche il livello di riuso 4) non so perche', ma io veramente capisco piu' facilmente e piu' velocemente il seguente (in Scala) rispetto a quello che hai scritto tu: a.count(_ 5) Tutti punti validi e forse come dici tu soggettivi. A me piace l'idea di esplicitare l'algoritmo, certo in questo caso è talmente banale che forse è un esempio poco significativo. Se dovessi definire l'algoritmo per eseguirlo io con carta e penna (o a mente) farei così: scorro ogni elemento della lista, se è maggiore di 5 aggiungo 1 a un contatore (mentale, una segnetto che faccio su un foglio, un dito...). Quando ho finito di scorrere tutti i numeri vedo il valore del contatore. Tornando al titolo del topic... una delle cose che amo di Python è che riesco a esprimere questi ragionamenti e a tradurli in codice meglio e più velocemente rispetto ad altri linguaggi che ho usato... Anche qui questioni soggettive forse. Ciao. Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Il dilemma degli array mutabili
On 18/09/2013 17:00, Piergiuliano Bossi wrote: 2013/9/18 Marco Beri marcob...@gmail.com mailto:marcob...@gmail.com 2013/9/18 Piergiuliano Bossi pgbo...@gmail.com mailto:pgbo...@gmail.com 2) non usate liste, ma tuple, ma poi come compensate la mancanza di append e remove (sembra una contraddizione in termini ma non lo e', basterebbe che append e remove ritornino nuove strutture dati, copie dell'originale) Premetto che questa cosa dei parametri immutabili non è risolvibile come vorresti tu. Ad ogni modo un append immutabile è come se ci fosse: a = (1, 2, 3, 4) a += (5, 6) # Appendi due elementi ad una copia della vecchia sequence a (1, 2, 3, 4, 5, 6) La remove è in effetti un po' più rognosa e bruttina: a = (1, 2, 3, 4, 5) a = a[:3] + a[3+1:] # Rimuove il terzo elemento da una copia della vecchia sequence a (1, 2, 3, 5) Beh, non male, potrei scrivermi dei metodi che fanno queste cose in un modo un po' piu' esplicito, ma l'idea c'e'. Eg: remove((1, 2, 3, 4, 5), 3) == (1, 2, 3, 5) Forse anche questi potreberro esserti utili...? :-) t = (1,2,3,4,5) t[:-1] # Simil pop (1, 2, 3, 4) t[::-1]# Simil reverse (5, 4, 3, 2, 1) # Simil remove (in effetti non bellissimo...) t[:t.index(2)] + t[t.index(2)+1:] (1, 3, 4, 5) # Stesso errore di list se provi a rimuovere qualcosa che non c'è t[:t.index(100)] + t[t.index(100) +1:] Traceback (most recent call last): File pyshell#131, line 1, in module t[:t.index(100)] + t[t.index(100) +1:] ValueError: tuple.index(x): x not in tuple Lorenzo PS: ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Un sacco di String replace!
On 12/11/2013 08:22, piergiorgio pancino wrote: Ciao a tutti, domanda banale ovvero: c'è un sistema più bello/veloce/simpatico di quello proposto per fare una serie di string replace? Nell'esempio di seguito sostituisco tutta una serie di caratteri non compatibili con ASCII: riga.append(str(self.rs.Fields.Item(i).value).replace('\n',' ').replace(\r,).replace(;,,).replace(,and).replace(,).replace(,).replace(°,)) Usare un dizionario non l'ha suggerito ancora nessuno? Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] R: Creare file di testo RTF con Python
On 26/11/2013 18:30, Attilio Menegon wrote: On 26/11/2013 16:54, Attilio Menegon wrote: Salve a tutti, vorrei chiedere quali moduli o applicazioni utilizzare per creare dei file di testo utilizzando Python. Manlio : Perchè utilizzare un formato vetusto come RTF? Era solo perché programmi simili lo fanno, così poi è facile modificarlo/personalizzarlo con word. Se il tuo target principale è word (da versione 2007 in poi!) potrebbe essere interessante questo: https://github.com/mikemaccana/python-docx Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] [OT] Che distro usate per il vostro desktop (e quale versione)?
On 29/11/13 17:52, Karim wrote: vorrei chiedervi che distro usate come desktop. Debian testing con XFCE - (g)vim come editor preferito. Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] [OT] Linus su netbook
On 10/12/2013 09:25, Carlos Catucci wrote: Sapete la figata di questa lista? Il messaggio che ha scatenato il thread era off topic per la lista Io dall'oggetto speravo in qualche rivelazione o dichiarazione shock da parte di _Linus_ [1] sui netbook (stile dito medio alla Nvidia..) e invece.. :) Lorenzo. [1] http://en.wikipedia.org/wiki/Linus_Torvalds ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] [OT] Che distro usate per il vostro server (WAS desktop)
On 13/12/13 19:19, Gollum1 wrote: Debian... Debian... Debian... aggiungerei.. stable (wheezy al momento) :) Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Gestione del tempo.
Ciao, On 19/12/13 15:41, Gabriele Battaglia wrote: [...] Progetto, sviluppare una piccola applicazione console, sotto Windows, con Python 2.7, che faccia da orologio per giocare a scacchi. La faccenda è presto detta: 2 timer partono da un tempo definibile dall'utente e scendono verso lo zero. Potrebbe essere divertente (e istruttivo) sviluppare l'applicazione come server e client per ogni giocatore... In questo modo volendo i due timer potrebbero anche essere su due macchine diverse. :) Lorenzo ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] Python bells..
Old school Christmas tune.. in pure python: http://bpaste.net/show/161512/ 1. Copiare / incollare da qualche parte 2. Lanciare lo script 3. Fare il play di python_bells.wav con il player preferito Auguri :-) Lorenzo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] web2Py hosting
CIao a tutti, sto cercando un host o una macchina virtuale per un sito internet che dobbiamo fare abbiamo deciso di farlo con web2py. Indicazioni in merito? Potresti fare delle prove con Openshift di Red Hat. Web2py è supportato: http://web2py.com/demo_admin/openshift/deploy -- LORENZO MAINARDI http://blog.mainardi.me ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python