Re: [Python] Algoritmo in CSV
2010/9/2 Vittorio Zuccala' : > Ecco: il mio problema è che vengono effettuati 200*2.000.000 di IF e la cosa > non mi piace molto. > Qualcuno ha un consiglio per ottimizzare? > Se un array non e` ordinato trovare il massimo costa O(n) in tempo e O(1) in spazio. Le colonne del tuo file immagino non siano ordinate per lunghezza perche` altrimenti non staresti facendo tutto questo lavoro. In tempo costera` comunque almeno O(righe*colonne) perche` devi guardare tutti gli elementi e in spazio O(colonne) perche` devi salvarti i massimi correnti. Tra l'altro O(righe*colonne) e` il numero di volte che viene chiamata sia l'if che la funzione lunghezza, che molto probabilmente e` piu` onerosa dell'if. Il cvs lo prepari tu in una parte del tuo progetto? Forse sarebbe meglio mettere tutto in un database che conserva i dati in maniera piu` furba del cvs come diceva Nicola, pero` farlo solo per vedere i massimi non serve a niente perche` dovresti comunque leggerti tutti i righe*colonne dati e quindi metterci il db di mezzo rallenterebbe soltanto le cose. -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Algoritmo in CSV
2010/9/3 Marco Mariani : > No, se in postgres crei un indice funzionale su LENGTH(colonna), una volta > creata la tabella e' sufficiente un index scan per recuperare i valori con > lunghezza massima. > > Chiaramente, 200 colonne fanno 200 indici con milioni di righe :") > Infatti il consiglio era di cambiare struttura dati per il progetto intero. Se devi leggere R*C dati _solo_ per trovare i massimi tanto vale che lo implementi direttamente, se devi farci _solo_ quello non conviene usare il db perche` la lentezza sta nel fatto che comunque li devi leggere tutti, cosa che va fatta se usi il db. -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Algoritmo in CSV
2010/9/3 Giuseppe Amato : > Ti conviene ordinare e prendere l'ultimo per ogni colonna utlizzando > sort(cmp) sulle colonne. L'algoritmo di sort è già ottimizzato rispetto > ai confronti che hai previsto tu. Se hai bisogno anche dell'indice del > campo butti tutto in un dizionario del tipo {:} però devi > fare attenzione alle duplicazioni, che comunque dovrai gestire nella > ricerca del massimo > Se e` un CVS molto probabilmente quei dati hanno senso messi in riga, inoltre riordinare (in python con timsort l'operazione e` O(log(n!)) quindi in questo caso righe*log(colonne!) e` molto piu` oneroso di righe*colonne quando righe = 2 milioni e colonne = 200, ci sono 9 ordini di grandezza di mezzo. -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Algoritmo in CSV
2010/9/3 Giuseppe Amato : > Non mi sono mai occupato di max finding quindi non so se è più veloce o > meno, ho cercato qualcosa, ma con scarsi risultati, mi puoi indicare qualche > risorsa dove trovare informazioni? > In un array non ordinato e` necessario visitare tutti gli elementi una volta per stabilirne il massimo, quindi l'algoritmo e` O(N) in tempo e O(1) in spazio perche` ti conservi il massimo corrente. > Però mi sono occupato di sorting e il caso O(n) è uno dei peggiori > (utilizzando algoritmi shell sort o quick sort), mentre O(log(n)) è più > probabile ed è comunque minore di O(n) (200x2e6=2e8, > 200xlog(2e6)=~1300,2e6xlog(200)=~4e6). > Io non so quanto e come tu ci abbia lavorato ma se non ti sei confuso con la notazione vorrei proprio sapere come fai il sorting tu! Nello stato dell'arte degli algoritmi di sorting O(N) e` l'andamento _desiderato_! ( http://en.wikipedia.org/wiki/Sorting_algorithm ) Tipicamente gli algoritmi buonivanno come O(nlog(n)), il TimSort di Python va mediamente un po` meglio come O(log(N!)) anche se non proprio formalmente, che e` comunque molto diverso da un andamento lineare (che in questo caso e` gia` problematico) per N abbastanza grande. > Ma ripeto potrei sbagliare, allora ho scritto il semplice script di seguito > e vi consiglio di provarlo e confrontare i risultati. > > [...] > > start=time.clock() > > print 'Sort time:',time.clock()-start > > [...] > Scusa ma stampi la differenza tra due tempi... senza fare il sort? > Il sort vince sempre, va pari se invece di interi si devono confrontare > classi. Ma il nostro amico doveva valutare interi se non ho capito male. > > Il sort non puo` vincere su una array disordinato! Prova ad immagginare di avere 100 numeri in fila, a mente/mano faresti prima a trovare il massimo o a riordinarli? E` un esempio banale ma dovrebbe farti rendere conto della differenza che c'e` tra le due operazioni. Comunque si parlava di lunghezza quindi probabilmente erano stringhe. -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Algoritmo in CSV
2010/9/4 enrico franchi : > La teoria, insomma, vince. Il mio discorso era un pelino piu' > generale. Ovvero che dal momento che la teoria nasconde sempre le > costanti moltiplicative, ma nella pratica queste possono avere un > impatto non indifferente, spesso un controllo non guasta. > Puo` essere vero in casi specifici dove le dimensioni del problema sono conosciute e contenute. Le costanti moltiplicative sono ignorate perche` all'aumentare delle dimensioni del problema sono davvero ininfluenti. Se l'algoritmo non e` furbo passare dal Python al C, anziche` usare un algiritmo furbo in Python, e` solo una perdita di tempo. -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Estrarre stringa da stringa
2010/9/29 Marco Giusti : > Immagino che già conosci questa risposta su stackoverflow[1] ma gli > altri che hanno proposto di usare le espressioni regolari forse no. > > [1] http://tinyurl.com/ydb4j9j > ARGH, sei arrivato prima di me, bravo :P -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] unire dati da due csv
2010/10/16 Simone Gabbriellini : > sulla base della prima colonna di ogni reader, che contiene il medesimo > insieme di nomi univoci, vorrei creare un nuovo csv che incorpori i dati di > coordReader e nodesReader. > Potresti essere un po' piu` specifico? Mi sembra di capire che tu abbia tue CSV tipo: CSV1: nome, anni pippo, 30 franco, 60 CSV2: nome, capelli pippo, 5834 franco, 312 e tu voglia come risultato: CSV_out nome, anni, capelli pippo, 30, 5834 franco, 60, 312 Corretto? in questo caso, se : - la prima colonna e` fatta da nomi unici - il numero di righe e` lo stesso - le righe sono nello stesso ordine allora una soluzione potrebbe essere: def csv_merge(csvr_a, csvr_b, csvw_out): for row_a, row_b in zip(csvr_a, csvr_b): csvw_out.writerow(row_a + row_b[1:]) csv_out = csv.writer(open('csv_out.txt', "w+")) csv_merge(coordReader, nodesReader, csv_out) Ciao, Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] unire dati da due csv
2010/10/16 Simone Gabbriellini : > è corretto, però nel mio caso la lista dei nomi nei due csv non ha lo stesso > ordine. potrei ordinarle però prima di iniziare il merge? > No, ordinarli prende tempo, e probabilmente il doppio della memoria, se non sono tantissime righe (x colonne) conviene salvare un csv (quello con meno colonne) tutto in memoria e poi iterare sul secondo e scrivere al volo sul csv def csv_merge(csvr_a, csvr_b, csvw_out): a_dict = {} a_fieldnames = None for row_a in csvr_a: if a_fieldnames == None: a_fieldnames = row_a else: a_dict[row_a[0]] = row_a b_fieldnames = None for row_b in csvr_b: if b_fieldnames == None: b_fieldnames = row_b csvw_out.writerow(a_fieldnames + b_fieldnames[1:]) else: csvw_out.writerow(a_dict[row_b[0]] + row_b[1:]) csv_out = csv.writer(open('out.txt', "w+")) csv_merge(coordReader, nodesReader, csv_out) se dai come primo parametro il csv con meno colonne è meglio. -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] inquisitori [was re: Turbopascal??]
Linus Torvalds scrisse: diff -u --recursive --new-file v1.1.41/linux/kernel/sched.c linux/kernel/sched.c --- v1.1.41/linux/kernel/sched.c Wed Aug 3 09:32:33 1994 +++ linux/kernel/sched.c Tue Aug 9 09:34:45 1994 @@ -161,7 +161,7 @@ * information in task[0] is never used. * * The "confuse_gcc" goto is used only to get better assembly code.. - * Djikstra probably hates me. + * Dijkstra probably hates me. */ asmlinkage void schedule(void) { -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Turbopascal??
2011/1/9 Enrico Franchi : > > > On 09/gen/2011, at 11:27, Marco Beri wrote: >> >> Beh, in realtà per me il mondo può finire solo quando sorpassiamo Java. > > Java è morto. Ci sono solo un paio di tizi che si portano a spasso il > cadavere putrefatto in uno zaino. Ne sei sicuro? Java is the new Cobol. -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Turbopascal??
2011/1/9 Enrico Franchi : > Infatti anche Cobol e' piu' o meno vivo come uno zombie. > Va in giro, e si sostenta mangiando il cervello dei viventi. > Ecco, anche Java e' un po' cosi'. Hai ragione. ;) > In questo senso hai ragione anche tu! Anche se mi dispiace di piu` per quelli che devono mantenere codice Cobol oggi che per quelli che manterranno codice Java tra trent'anni :P -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Text editor o IDE?
2011/1/9 Nicola Iarocci : > Voi con cosa lavorate ai vostri progetti Python? Quali sono i vantaggi e > svantaggi di lavorare con un semplice text editor rispetto a una IDE più > completa? Che prodotti preferite? > Grazie! Vim o gedit. Puoi trovare qua [1] una lista di editor/ide con le relative feature. Tempo fa avevo visto che qualcuno aveva fatto una versione delle stesse informazioni in maniera piu` facilmente consultabile (una pagina web con i checkbox per le feature...) pero` ora non la trovo :\ -- Andrea [1] ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Text editor o IDE?
Il tasto send e` stato premuto prima di ctrl-v: [1] http://stackoverflow.com/questions/81584/what-ide-to-use-for-python -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Turbopascal??
2011/1/10 Enrico 'Henryx' Bianchi : > On Sunday 09 January 2011 13:38:03 Enrico Franchi wrote: > >> Java è morto. Ci sono solo un paio di tizi che si portano a spasso il >> cadavere putrefatto in uno zaino. > > Non saprei, personalmente ogni volta che tento di rimpiazzarlo nei miei > progetti trovo qualche magagna che mi fa tornare indietro (ovvero, secondo me > Python e` troppo ad alto livello, C e` troppo a basso livello, D e` ancora > nella fase inusabile e Pascal ha il difetto di diventare tedioso) > D non l'ho ancora provato, con Go come ti trovi? -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Text editor o IDE?
2011/1/10 Carlo Miron : > 2011/1/10 enrico franchi : >> 2011/1/10 Marco Beri : http://ergoemacs.org/ >>> Leggo la lista di linguaggi nativamente supportati: >> >> Mi sembra ne manchino un paio di importanti. > > Manca anche Java, oltre al paio di importanti. > LOL! Comunque supporta Linden Scripting, mi pare che basti :D -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Numero to byte
2011/1/11 lordkrandel : > Oddio... ma da quando è cambiato O.o '''?? > Gennaio 1999 http://en.wikipedia.org/wiki/Kibibyte#cite_note-1 -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Numero to byte
Pythonese def human_from_bytes(bytes, factor=1024., labels=['B', 'KiB', 'MiB', 'GiB',\ 'TiB', 'PiB'], precision=2): index = 0 while 1. * bytes / factor**index > factor and index < len(labels)-1: index += 1 return ('%.*lf %s') % (precision, 1.*bytes/factor**index, labels[index]) -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Numero to byte
2011/1/12 Marco Mariani : > va bene tutto purche' smettiate di ridefinire la builtin 'bytes'... :-) > Ma dai, mi pare difficile che ci sia bisogno di utilizzarla in un eventuale refactor di quella funzione :P -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] [VIM] Evitare lo shifting a destra nel copy e paste
2011/1/13 Karim Gorjux : > Ciao a tutti, vi chiedo una cosa di VIM che vorrei risolvere. Quando > prendo del codice da internet e lo copio su VIM, mi capita spesso di > avere l'effetto onda ovvero il testo mi viene spostato, riga per riga, > verso destra. > > Sapete come evitare la cosa? > Molto probabilmente hai l'autoindent attivo, e stai usando il terminale. Leggi un po' se quel che dice qua ti va bene. http://vim.wikia.com/wiki/Toggle_auto-indenting_for_code_paste Chiaramente l'altra soluzione e` NON fare copia e incolla di codice da internet: http://www.codinghorror.com/blog/2009/04/a-modest-proposal-for-the-copy-and-paste-school-of-code-reuse.html :P -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Inserimento dati in sqlite
On 28 January 2011 16:15, Daniele Varrazzo wrote: > On Fri, 28 Jan 2011 15:02:58 +0100, "Vittorio Zuccala'" > wrote: > >> stringa += "'" + record[i] + "'" > > Prima io, prima io!!! > > http://xkcd.com/327/ > Se l'e` cercata :D -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Flickr
Hai provato http://code.djangoproject.com/wiki/FlickrIntegration ?? 2011/2/5 Michele Gatti : > Qualcuno di voi sa come si posso sincronizzare le foto di flickr, su di un > sito fatto in django? > Grazie > Michele > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > > -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Conversione tupla in intero
Se la tupla si chiamasse `a`: intero = sum(i*10**n for n, i in enumerate(a[::-1])) 2011/2/9 Nicola Ferrari : > 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 > > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > > -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Conversione tupla in intero
Con la reduce stai facendo solo operazioni con interi senza tutto l'overhead della conversione e lo spippolamento di stringhe. In pratica con la reduce e` come se facessi: def unisci_interi(tupla): r = 0 for i in tupla: r *= 10 r += i return r 2011/2/10 Gianluca Bargelli : > from timeit import Timer > > t1 = Timer(""" reduce(lambda x, y: x*10+y, (1,2,3,4,5,6,7)) """) > t2 = Timer(""" "".join([str(i) for i in (1,2,3,4,5,6,7)]) """) > > print("Reduce: {0} | List comprehension: {1}").format(t1.timeit(), > t2.timeit()) > > l'output sulla mia macchina con timeit() è: > > "Reduce: 1.58372807503 | List comprehension: 2.46447396278" > > usando Python 2.6.6 (Linux), qualcuno sa spiegare il perché di tale > differenza? :-) > > Il 10 febbraio 2011 17:44, Simone Federici ha scritto: >> Quale è la più performante? >> >> 2011/2/10 Gianluca Bargelli >>> >>> Ops, pardon! >>> >>> t = (1,2,3,4,5,6,7) >>> int("".join([str(i) for i in t])) >>> >>> La solita fretta :-) >>> >>> Il 10 febbraio 2011 17:32, Marco Beri ha scritto: >>> > 2011/2/10 Gianluca Bargelli >>> >> >>> >> Ecco la prima cosa che mi è venuta in mente: >>> >> >>> >> t = (1,2,3,4,5,6,7) >>> >> "".join([str(i) for i in t]) >>> >> >>> >> Pulita, leggibile...semplice! ;-) >>> > >>> > E sbagliata :-) >>> > Ci manca un int(). >>> > >>> > ___ >>> > Python mailing list >>> > Python@lists.python.it >>> > http://lists.python.it/mailman/listinfo/python >>> > >>> > >>> >>> >>> >>> -- >>> -Gianluca >>> ___ >>> 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 >> >> > > > > -- > -Gianluca > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] dizionario: ottenere chiave da valore
2011/2/12 Nicola Ferrari : > Ciao a tutti.. > ho un dizionario di n elementi.. per prendere il valore massimo faccio > max(dizionario.values()).. esiste un metodo che dato un valore mi recupera > la chiave di questo valore? > Provato con max(( (dizionario[key], key) for key in dizionario ))[1] ? -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Abuso di generatori?
2011/4/9 Pietro Battiston : > Avete idee più brillanti su come organizzare il mio codice? > Fare dei generatori che si chiamano l'un l'altro è una soluzione che non > mi piace... Non sono sicurissimo di aver capito il tuo problema quindi non so se questo ti può aiutare ma... hai mai visto monocle? https://github.com/saucelabs/monocle#readme -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] telnetlib gestione router
2011/5/4 Andrea Tagliolini -Gmail : > cosa uptime? Ma scusa, dopo il reboot dove lo lanci uptime? > Il 04/05/2011 12:36, Nicola Ferrari ha scritto: > > scau l'ignoranza... ma come funziona? E' un comando telnet? (giusto per > capire dove documentarmi) > > Il giorno 04 maggio 2011 11:53, Andrea Tagliolini -Gmail > ha scritto: >> >> Puoi anche controllare con il comando uptime, a quanto corrisponde "la >> vita" del router :) >> >> Il 04/05/2011 11:34, Nicola Ferrari ha scritto: >> >> Se riesco ci darò un occhiata... >> Una domanda "teorica"... una volta che da telnet faccio "reboot", per >> sapere se ha riavviato devo controllare se la rete è "su" giusto?? >> solo che nel momento in cui faccio reboot al momento in cui la rete >> "cade", passa un po' di tempo.. come faccio a risolvere? Faccio uno sleep ? >> Di quanti secondi? >> >> Il giorno 04 maggio 2011 10:45, Andrea Tagliolini -Gmail >> ha scritto: >>> >>> Ok, naturalmente puoi fare come vuoi :) >>> Comunque ti dò un piccolo esempio di pexpect per fare un ping verso il >>> dns di google nel router. >>> >>> import pexpect >>> >>> >>> telnet = pexpect.spawn("telnet 192.168.1.1") >>> telnet.expect("Login:") >>> telnet.sendline("username del tuo router") >>> telnet.expect("Password:") >>> telnet.sendline("password_del tuo router") >>> telnet.expect("#") >>> telnet.senline("ping -c 5 8.8.8.8") >>> telnet.expect("#") >>> telnet.interact() >>> >>> L'ho scritto al volo e potrebbero esserci errori, però in generale >>> funziona cosi. >>> Io lo uso molto spesso in ambito lavorativo e funziona alla grande :) >>> >>> Ciao >>> >>> >>> Il 04/05/2011 10:22, Nicola Ferrari ha scritto: Perchè non provi pexpect? >>> >>> Perchè telnetlib sembra più usata/documentata (almeno, visto i risultati >>> che mi fornisce google quando ricerco python+telnet). >>> >>> 2011/5/4 Andrea Tagliolini -Gmail Perchè non provi pexpect? http://pexpect.sourceforge.net/pexpect.html Ciao Il 04/05/2011 10:00, Nicola Ferrari ha scritto: Buongiorno a tutti. Tramite python (utilizzando l'esempio presente sulla documentazione della libreria telnetlib) riesco a connettermi, tramite telnet, al mio router. Ecco il codice del mio file "test.py" import getpass import sys import telnetlib HOST = "192.168.1.2" user = raw_input("Utente: ") password = getpass.getpass() tn = telnetlib.Telnet(HOST) tn.read_until("login: ") tn.write(user + "\n") if password: tn.read_until("Password: ") tn.write(password + "\n") tn.write("help \n") tn.write("exit\n") print tn.read_all() Così facendo, mi vengono forniti tutti i possibili comandi che posso lanciare. ~ # help Built-in commands: --- . : break cd chdir continue eval exec exit export false hash help local pwd read readonly return set shift source times trap true type ulimit umask unset wait [ [[ ash cat chgrp chmod chown cp date dd df echo egrep false fgrep free grep halt ifconfig insmod kill killall klogd ln login ls lsmod mesg mkdir modprobe more mv netstat nslookup ping pivot_root poweroff ps pwd reboot rm rmdir rmmod route sh sleep sync syslogd tail telnetd test tftp top touch traceroute true uname uptime vi watch wget who whoami Non riesco a capire come funziona il "write": - scrive tutto quanto e poi, una volta lanciato read_all esegue e legge i risultati - esegue il comando fornito e il read_all legge solamente i risultati?? E' per capire come poter fare un ping (per esempio) 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 >>> >>> >>> >>> -- >>> Nicola Ferrari >>> website: http://www.nicolaferrari.name >>> >>> skype: nick.ferro >>> >>> >>> ___ >>> 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 >>> >> >> >> >> -- >> Nicola Ferrari >> website: http://www.nicolaferrari.name >> >> skype: nick.ferro >> >> >> ___ >> 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 >> > > > > -- > Nicola Ferrari > website: http://www.nicol
Re: [Python] Multilingual GUI
2011/7/4 stefano664 : > Ciao a tutti, > qualcuno ha idea di come realizzare, semplicemente, un software > multilingua? > Temo non esista nulla di semplice se vuoi fare le cose generali e per bene. Lingue diverse hanno ordine diverso nelle componenti delle frasi, il plurale si "attiva" per numeri diversi, ci sono problemi di genere per non parlare dei linguaggi bidirezionali. Quindi la domanda che viene spontanea e`: che lingue devi supportare? -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Multilingual GUI
2011/7/4 Alessandro Dentella : >> Temo non esista nulla di semplice se vuoi fare le cose generali e per bene. >> Lingue diverse hanno ordine diverso nelle componenti delle frasi, il >> plurale si "attiva" per numeri diversi, ci sono problemi di genere per > > Questa cosa del plurale mi incuriosice molto! hai maggiori dettagli? che > lingue hanno plurali differenti dal nostro? Intendi che in alcune lingue 2 > non è ancora un plurale? > Probabilmente qualcuno che parla piu` lingue puo` spiegart, pero` qualche esempioi: In italiano e in inglese hai gli stessi due casi: 1 tizio/guy 0,2,3... tizi/guys In francese hai un caso per 0 e 1 e un altro caso per 2+ In russo hai un caso per zero, un caso per 1,11,21,31... uno per i numeri divisibili per 5 e uno per i restanti In giapponese non c'e` differenza, E altre lingue hanno altre differenze... Nei linguaggi da destra verso sinistra hai alcune cose che si girano altre che non si girano, fare un interfaccia grafica multilingua e` PITA, se non sei obbligato e` meglio lasciare stare, o almeno definire i linguaggi che vuoi supportare e non cambiarli perche` aggiungerne puo` essere parecchio complicato. Poi il sistema di date e di sorting e` diverso da lingua a lingua, ma per questo ci sono librerie che vengono in aiuto. Non sono un esperto in materia ma i problemi da superare sono parecchi a seconda di quanti linguaggi vuoi supportare... -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] numeri primi
Gmpy non la usa nessuno? Io ora sono su un netbook quindi e` abbastanza sleale, pero` io alla fine ho usato quella per project eulero! (Grazie Alex :D ) 2011/8/3 Enrico Franchi : > Enrico Franchi wrote: >> >> Sulla mia macchina: >> % time python -c "import km;km.sieve(1)" >> python -c "import km;km.sieve(1)" 9.10s user 0.21s system 97% >> cpu 9.580 total >> >> Adesso vedo se riesco ad aggiungerci una qualche micro-ottimizzazione >> (al mio). > > % time python erat_matrix.py 1 > (array([ 2, 3, 5, ..., 9959, 9971, 9989]),) > python erat_matrix.py 1 6.07s user 0.85s system 99% cpu 6.958 total > > Uff. Pero' ora sono 15 righe. > > > -- > . > ..: -enrico- > > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] [OT]: PHP critique [ERA] Re: Python e html
Un bell'articolo che dice PHP sucks (oggettivamente sucks, soggettivamente opinabile :P) but it doesn't matter :P http://www.codinghorror.com/blog/2008/05/php-sucks-but-it-doesnt-matter.html -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Fwd: [Staff] Proposta editoriale
2012/1/11 enrico franchi : > 2012/1/10 Carlos Catucci : >> Potrebbe essere uno sforzo collaborativo di piu persone. >> >> +1 > > +1 anche io comunque. > +1 anche io, btw :D -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] [OT] Offerta di lavoro per Developer Python
Ciao Simone, due domande, forse banali, prima di procedere: - Accettate telelavoro abituale eccetto meeting eccezionali? (tipo vivere a Milano) - Quanto piu` in la` puo` essere la data di inizio? Sono impegnato in Google London fino a meta` Ottobre. Ciao, Andrea 2012/3/15 Simone Federici : > Premessa: > [ intanto che decidiamo se vale la pena avere un posto dove mettere le > offerte, posto qui ] > > > Ciao, > la mia azienda K-Tech, [ROMA EUR] > cerca urgentemente sviluppatori python da inserire in alcuni suoi progetti. > > servono sia figure senior che junior. > > qui l'offerta: > http://www.k-tech.it/offerta_di_lavoro/all_jobs/sviluppatore-python-spy > > praticamente cerchiamo gente brava, sveglia, motivata, smart, cool, devops > con tutte le buone caratteristiche del caso. > > Quindi se conoscete Django è buona cosa, ma se conoscete "Altro" va bene lo > stesso. > > Potrei dettagliare inutilmente l'offerta con un elenco di tecnologie utili, > ma rimarrebbe un elenco, qualsiasi libreria ha una sua storia e un suo > utilizzo, e a seconda del progetto dove vai ha la sua importanza. > > Un pythonista si riconosce dal codice che scrive, quindi se allegate oltre > che il CV, un esempio di codice la cosa è ben gradita. > > Ovviamente spargete la voce. > > Avete 2 strade, parlare direttamente con me, oppure saltare alle risorse > umane, lav...@k-tech.it. > > (io conto come il 2 di picche) > > PS. se siete sistemisti e usate python come linguaggio di scripting, forse > non è l'offerta che fa per voi a meno che non volete scrivere webapps nel > qual caso sapete cosa vi aspetta. > > PPS. se poi siete veri sistemisti allora proponetevi come sistemisti, perche > cerchiamo pure quelli > > ciao > Simone > > > Simone Federici > > Software Craftsman > XP, Agile, Scrum, Kanban > Quality, performance & security > > Explicit is better than implicit. > > > > ___ > 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] espressioni regolari
La prima cosa che mi e` venuta in mente e`: http://stackoverflow.com/a/1732454 La seconda e` la funzione prettify() di BeautifulSoup [1]. Buon lavoro :) [1] http://www.crummy.com/software/BeautifulSoup/ 2012/4/23 Lorenzo Macchiavelli : > 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 > -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Problema di ordinamento dict di list complesso AIUTO!
from collections import OrderedDict result = OrderedDict(sorted(tuo_dict.items(), key=lambda t: -t[4])) 2012/7/17 Vittorio Spina : > Ciao a tutti, > ho un dizionario di questo tipo: > a = { "ValueName1": [a,b,c,d,e], > "ValueName2": [a,b,c,d,e], > ... > "ValueNamen": [a,b,c,d,s] > } > in pratica per ogni elemento del dizionario, ho una lista. Ciascuna lista è > composta di 5 elementi di tipo INTERO, il valore "e" [4] di ciascuna lista è > sempre differente da qualsiasi altro elemento e-simo delle altre liste > presenti nel dizionario. > Vorrei ordinare le voci il dizionario per e > riassumendo se il mio dizionario fosse: > a={"vittorio":[1,2,3,4,6], "gianni":[11,77,3,4,3], "luca":[2,4,1,5,8], > "Marco":[2,2,3,6,1], "Antonio":[4,23,11,2,2]} > b=ordina(a) dovrebbe fare in modo che > b={"Marco":[2,2,3,6,1], "Antonio":[4,23,11,2,2], "gianni":[11,77,3,4,3], > "vittorio":[1,2,3,4,6], "luca":[2,4,1,5,8]} > Come si fa? > io non ce la faccio! > Aiuto vi prego! > grazie > > Vittorio > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Unione espressioni regolari
Con il lookahead: result_pattern = "(?=pattern1)(?=pattern2)" 2012/7/20 Walter Valenti : > Ho una stringa che per essere verificata deve "matchare" due o più pattern > diversi. > La proma cosa che i viene in mente è avere diverse reg. expr. e fare la > verifica con degli AND. > > Es: > p1=re.compile(pattern1) > p2=re.compile(pattern2) > > if p1.match(stringa) and p2.match(stringa): > ##fai quello che devi. > > > Mi chiedevo: c'è la possibilità di usare usa sola reg. expr. che sia un "and" > tra i vari pattern ? > > Grazie. > Walter > > > > > -- > Per favore non inviatemi allegati in formato MS Office. > Utilizza alternativamente documenti in formato OpenDocument. > > > http://oinophilos.blogspot.com/ > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Unione espressioni regolari
Argh il Beri piu` veloce che mai :D 2012/7/20 Marco Beri : > 2012/7/20 Walter Valenti >> >> Ho una stringa che per essere verificata deve "matchare" due o più pattern >> diversi. >> La proma cosa che i viene in mente è avere diverse reg. expr. e fare la >> verifica con degli AND. >> Es: >> p1=re.compile(pattern1) >> p2=re.compile(pattern2) >> if p1.match(stringa) and p2.match(stringa): >> ##fai quello che devi. >> Mi chiedevo: c'è la possibilità di usare usa sola reg. expr. che sia un >> "and" tra i vari pattern ? > > > L'and non esiste, come esercizio di (non)stile si potrebbe usare il > lookaround: import re re.match("(?=.*a)(?=.*b)", "") re.match("(?=.*a)(?=.*b)", "xxxa") re.match("(?=.*a)(?=.*b)", "xxxaxbxx") > <_sre.SRE_Match object at 0xb6ebcf00> re.match("(?=.*a)(?=.*b)", "xxxbxxax") > <_sre.SRE_Match object at 0xb72dd218> > > Ma io mi terrei l'and come hai fatto tu (tra l'altro puoi anche > cortocircuitare l'espressione per cui se non trovi la prima non cerchi > nemmeno la seconda). > > 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 > -- Andrea ___ 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
2012/9/2 Federico Bruni : > Buongiorno a tutti > Ciao Federico > 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? > Mi sapete dire anche cosa mi devo leggere della documentazione di python > (nel tutorial?) per capire il mio errore? > Ci sono un po' di cose strane, mi pare che tu voglia come risultato: s = 'Ciao mondo\nsono un newbie', giusto? Se vuoi rimuovere gli spazi a destra di ogni linea devi iterare sulle linee, "for line in s" non funziona come pensi, in quel modo stai iterando sui singoli caratteri di s. Dovresti fare: "for line in s.split('\n')" Inoltre riassegni s dentro il for, e questo non e` cosa buona perche` probabilmente non fa quello che ti aspetti di nuovo, potresti fare una cosa del genere: clean_lines = [] for line in s.split('\n'): clean_lines.append(line.rstrip()) s = '\n'.join(clear_lines) O nella versione piu` compatta: s = '\n'.join(line.rstrip() for line in s.split('\n')) Guarda come funzionano join e split su http://docs.python.org/library/string.html e come si itera su una stringa. Ciao, Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Glitch
OK questo e` _almeno_ controintuitivo. se sostituisci "x[0]" con "a=x[0]; a" oppure sostituendo la riga con += con "x[0].__iadd__([3])" non lancia l'eccezione e fa quello che mi aspettavo facesse il codice originale. Cosa mi sto perdendo? 2013/1/4 Marco Beri > 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 > > -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] [django] max_age cache control dinamico
Ciao! Dunque si puo` facilmente controllare la max_age per una view cosi`: """ from django.views.decorators.cache import cache_control @cache_control(max_age=3600) def my_view(request): # ... """ Ma se volessi che il valore di max_age venga deciso _dentro_ my_view come posso fare? Per esempio: """ def my_view(request): if is_good_to_keep_in_cache_for_a_bit(request): # set max_age to 36000 else: # set max_age to 42 # ... """ Cheers, Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Funzione che ritorna None.
2013/3/28 Gabriel Battaglia (Kriyaban) > buongiorno. > [...] > Ecco il codice. > > Ciao Gabriel, purtroppo nella mail che hai mandato manca l'indentazione di tutta la classe, quindi e` difficile capise per esempio hai lasciato un `return` dentro un if e quindi un metodo ritorna None (quando non si verifica la condizione dell'if), oppure se c'e` qualcos'altro che non va. Prova a rimandare la mail con il codice ben formattato o usare un gist: https://gist.github.com/ Inoltre credo che `__add__` debba ritornare: `return Frazione(self.Numeratore * Altro.Denominatore + self.Denominatore * Altro.Numeratore, self.Denominatore * Altro.Denominatore)` Ciao, Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Funzione che ritorna None.
On Mar 29, 2013 9:21 AM, "Gabriel Battaglia (Kriyaban)" wrote: > > Buongiorno. > > Dovrei essere riuscito ad incollare su pastebin.com > > Il codice lo trovate qui: http://pastebin.com/Z6Bsbb7J > Riga 24, il return dovrebbe essere fuori dall'if (deindentato). Ciao, Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] WebFaction
2013/4/27 Daniele Palmese > Ciao a tutti, qualcuno conosce e/o ha avuto esperienza diretta con > WebFaction? > > Anche io ho un po' di roba su WebFaction e mi accodo ai commenti di Nicola e Giuseppe. Il servizio clienti e` incredibilmente gentile e veloce a rispondere! Ovviamente va bene per cose "piccole", ma probabilmente se non avete bisogno immediato di una struttura dedicata WebFaction vi andra` bene per un po'. -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Non dovreste perdervi questo domanda su SO
On 19 May 2013 23:12, Simone Federici wrote: > > On Sun, May 19, 2013 at 10:15 PM, Nicola Larosa wrote: > >> Eh?!? > > > +1 ? > Forse voleva dire che son 3 valori + il default e basta una look-up table? Mah... +1 ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Superstizioni [was: Python web messaggi in Post e link a file in differenti directory]
2013/6/3 Daniele Varrazzo > On Mon, 2013-06-03 at 12:52 +0200, Carlos Catucci wrote: > > Forse avevi in mente una soluzione basata sull'import dinamico: quella > > > > > te la sconsiglio perché import ha una semantica un po' particolare. Per > > > caricare dinamicamente una configurazione è meglio eval. > > > > > > > ARRRGGG!! EVIL, non EVAL ;) > > > > Scherzi a parte io lo ho sempre trovato (in tutti i linguaggi che lo > > implementano come costrutto) alquanto "pericoloso". > > > Io invece non attraverso mai la strada quando passa un gatto nero. L'ho > sempre trovato pericoloso. > > Hai dimenticato [FLAME] nell'oggetto. -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] OT: Stronzo (era: Re: operatore percentuali)
On Jun 16, 2013 11:09 PM, "Nicola Larosa" wrote: > Nanni, capisco la necessità scenica di rimarcare il punto, ma questo non > lo dovevi fare. Vatti a schiaffeggiare allo specchio invece. Stronzo. > Chissà se legge questa lista :P Comunque è la prima volta che la vedo, ma è un uno spezzone senza contesto tratto da un film o sbaglio? Nel caso potrebbe essere semplicemente una reazione voluta. Un po' come il fatto che gli attori che fanno Malfoy e Joffrey stanno antipatici. - A ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] ricerca di stringhe in un testo
def get_lines_containing(word, in_text): return [n for n, line in enumerate(in_text.split('\n')) if word.lower() in line.lower()] -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Insegnante Python
On Jul 26, 2013 11:53 AM, "Marco Beri" wrote: > > Voglio fare una domanda provocatoria: quanti di quelli che scrivono qui in lista hanno imparato da soli e quanti hanno seguito delle lezioni a pagamento? > Ho seguito un seminario in uni per python, ma programmavo già in altri linguaggi. Per il bootstrap avere una persona che sa spiegare vicino è assolutamente "a nice to have" e diventa sempre meno necessario col tempo. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] filtrare ai margini
2013/9/19 Carlos Catucci : > risultato: x è più veloce di y. >> >> 27 milionesimi di secondo contro 59. >> nel caso dipenda dal codice ho usato, eccolo: > > > Non so la velocita' ma > > from math import copysign > > x = valore_che_vuoi > > [x if x in range(-67,67) else copysign(67,x)] > Alternativa: x = blah() x = -67 if x < -67 else min(x, 67) -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Quoting (was: filtrare ai margini)
2013/9/19 Marco Beri : > 2013/9/19 Nicola Larosa >> >> Marco Beri wrote: >> > Ma perché non lasci il quoting in html? >> >> Perché Thunderbird ha una scelta globale di formato di risposta per ogni >> account. E poi non riesco ancora a convincermi di scrivere sempre in >> HTML. :-) > > > Eh... quindi è un problema anche tuo, non solo mio :-) > > Oramai non mi sembra più sia tutto questo tabù scrivere in HTML. > > A meno che non devi scrivere a RMS ma tanto non ti caga lo stesso... > BTW anche in gmail puoi decidere di rispondere in formato testo, che e` quello che sto facendo io ora. Per gli a capo... 80 colonne? :P -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] il colmo: annunci di lavoro per ingegneri e laureati alla fame
2013/9/21 Remo The Last : > 1. Società xyz cerca laureato in Ingegneria per carico e scarico merci di > magazzino. > Necessita conoscenza di Microsoft office. > (No comment!!!) > Questo e` un troll. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] il colmo: annunci di lavoro per ingegneri e laureati alla fame
2013/9/21 Giorgio Zoppi : > A google se non hai la laurea non entri e cosi in ogni altra grande azienda > di informatica che ti permette di crescere. Studia! > Questo e` ovviamente falso. Se sei bravo entri sia in Google, che in Facebook eccetera. Il titolo di studio non e` indispensabile, ma aiuta molto. Se si studia per imparare apre la mente ed e` molto piu` difficile imparare fuori dal contesto accademico e sopratutto stare "on the edge". Per me il primo annuncio e` una trollata. Sarebbe poco politically correct chiedere il nome della societa` xyz? -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Un vero multithread
On Oct 22, 2013 8:00 PM, "Giovanni Vittorio Spina" wrote: > > Ho implementato un modulo che mette uno stream ffmpeg su una surface di pygame e funziona fluidissimo. Sto poi facendo un programma che legge uno stream da un sensore laser. Se aggiungo stream video e stream laser, nonostante sia tutto su thread separati (modulo thread) i calcoli son troppi e lo stream video perde pacchetti con un peggioramento evidente della qualità video oppure, limitando al massimo il framerate, è lo stream del laser a cedere colpi evidenti. Il motivo credo che sia il fatto che a livello di calcolo, il modulo thread non implementa un vero multithread, ma riunisce comunque tutti sotto un solo processo che gestisce con un sistema semaforico particolarmente intelligente. > > Per ovviare il problema avevo pensato di fare un'applicazione che legge i dati dal laser e un'altra con interfaccia grafica e con lo stream video. > > Come condivido i dati? Non vorrei usare un sistema client server, mi piacerebbe qualcosa di più elegante che mi permetta la condivisione di un dizionario con 7-8000 valori ad una frequenza di almeno 10 letture al secondo... Avete idee? > 7-8000 valori di che tipo? Interi? Inoltre si aggiornano ogni volta tutti o avrebbe senso mandare solo i nuovi valori? ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] sfilza annuale di OOTO...
Hanno un header "Auto-Submitted: auto-.*" con valore tipo auto-generated o auto-replied. http://www.iana.org/assignments/auto-submitted-keywords/auto-submitted-keywords.xhtml http://tools.ietf.org/html/rfc5436#section-2.7.1 E` cosi` che si evitano pure i cicli tra autorisponditori (penso che google groups lo faccia di default), qui non ho idea di come funzioni ma mi pare ragionevole. Cheers, Andrea 2013/12/23 Diego Alejandro Barrera : > >> Il Lunedì 23 Dicembre 2013 9:53, Gollum1 ha >> scritto: >> Molto più semplice... Chi attiva il risponditore automatico in una ml, >> finisce direttamente in una nuova regola personalizzata... E quella persona >> non riceverà più alcuna attenzione da parte mia... Per sempre. > > > > Che succede se facciamo tutti un autorisponditore all'autorisponditore? :D > > > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] E' piu' forte di me
2013/12/23 Ranaridens : > > > tu parli da programmatore esperto e affermato, e li ti do ragione. Ora > invece tira via il "capellino del bravo programmatore"(cit. Zaffanella) e > mettiti quello dello studente delle superiori. Per la stragrande maggioranza > degli studenti delle superiori è molto più facile partire da PHP invece che > da Python! E il tanto disprezzato "Guestbook" o simili che oggi sembrano > delle cazzate a 14 anni danno delle soddisfazioni personali ;) > Sottoscrivo. E` stato anche per me uno dei primi linguaggi, subito dopo il mircscripting [0] (PHP in confronto e` proprio bello!) e JS. Consiglio la lettura di un post di Jeff Atwood in risposta al post citato [1]. E` facilissimo fare le flamewar, specialmente in una mailing list di Python, pero` in realta` e` uno strumento come un altro e non bisogna dare troppo spazio ai sentimentalismi. Da studente delle scuole medie/superiori avere hosting gratuiti su cui buttare una pagina di hello world e` una cosa che l'ecosistema di PHP consente da anni [2][3]. Benche` probabilmente con 50 righe di flask si possa tirare su un guestbook pseudo decente non so quanto sia facile scriverlo e metterlo online gratuitamente per uno studente alle prime armi. Detto questo, oggi non inizierei nulla di nuovo in PHP (e cerco di starne il piu` lontano possibile), pero` bisogna riconoscere che ha avuto un successo immane grazie al proprio ecosistema (e ad alcuni ben noti casi di successo [4][5][6]). Non ho i numeri, ma almeno personalmente conosco piu` persone che sono state introdotte al mondo della programmazione grazie a PHP che grazie a Python. Per il resto c'e` un post ancora piu` vecchio di Atwood la cui introduzione e` quantomeno buffa [7]. Cheers, Andrea [0] http://en.wikipedia.org/wiki/MIRC_scripting_language [1] http://www.codinghorror.com/blog/2012/06/the-php-singularity.html [2] http://www.000webhost.com/ [3] http://it.altervista.org/ [4] http://www.facebook.com/ [5] http://www.wikipedia.org/ [6] http://www.youtube.com/ [7] http://www.codinghorror.com/blog/2008/05/php-sucks-but-it-doesnt-matter.html ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] E' piu' forte di me
On 23 December 2013 16:50, Nadir Sampaoli wrote: >> pero` in realta` e` uno strumento come un altro > > *cough* http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/ > *cough* > > Non conosco altri strumenti come questo. > https://www.destroyallsoftware.com/talks/wat -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] pythonisti in Sardegna
2014-02-19 19:17 GMT+00:00 Federico Figus : > Ciao Francesco, > > non siamo in molti in Sardegna, ma qualcuno c'è ;) > In alcuni corsi all'università di cagliari viene insegnato ed utilizzato, > soprattutto in ingegneria. > > Confermo, io ho seguito un seminario li` al primo anno di ingegneria. Non vivo piu` li` pero` :) Ci sono un po' di pythonisti sardi, penso che la persona con la lista completa sia C8E che non ne puo` piu` (*). Guardando su meetup.com non ho trovato nessun gruppo, probabilmente il modo migliore per incontrare qualcuno localmente e` organizzare qualche meetup. Cheers, Andrea (*) just kidding (**) (**) sort of ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] or
2014-03-19 18:03 GMT+00:00 Balan Victor : > Ho visto che per esclude usate una lista. In presenza di tanti elementi > nella lista exclude non è più efficiente usare un dictionary? > Un set [0] ancora meglio. -- Andrea [0 ]http://docs.python.org/2/library/sets.html ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Pycon 5
+1 2014-04-30 14:42 GMT+01:00 Giovanni Porcari : > Giusto per curiosità... chi viene quest'anno a Firenze ? > > G > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > -- Andrea ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python