Re: [Python] Algoritmo in CSV

2010-09-03 Thread Andrea Ambu
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-09-03 Thread Andrea Ambu
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-09-03 Thread Andrea Ambu
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-09-03 Thread Andrea Ambu
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-09-04 Thread Andrea Ambu
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-09-29 Thread Andrea Ambu
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 Thread Andrea Ambu
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 Thread Andrea Ambu
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??]

2011-01-05 Thread Andrea Ambu
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-01-09 Thread Andrea Ambu
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-01-09 Thread Andrea Ambu
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-01-09 Thread Andrea Ambu
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?

2011-01-09 Thread Andrea Ambu
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-01-09 Thread Andrea Ambu
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-01-10 Thread Andrea Ambu
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-01-11 Thread Andrea Ambu
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

2011-01-12 Thread Andrea Ambu
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-01-12 Thread Andrea Ambu
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-01-13 Thread Andrea Ambu
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

2011-01-28 Thread Andrea Ambu
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

2011-02-05 Thread Andrea Ambu
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

2011-02-09 Thread Andrea Ambu
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

2011-02-10 Thread Andrea Ambu
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-02-12 Thread Andrea Ambu
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-04-10 Thread Andrea Ambu
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-05-04 Thread Andrea Ambu
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-07-04 Thread Andrea Ambu
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-07-04 Thread Andrea Ambu
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

2011-08-03 Thread Andrea Ambu
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

2011-12-08 Thread Andrea Ambu
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-01-10 Thread Andrea Ambu
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

2012-03-15 Thread Andrea Ambu
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

2012-04-23 Thread Andrea Ambu
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!

2012-07-17 Thread Andrea Ambu
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

2012-07-20 Thread Andrea Ambu
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

2012-07-20 Thread Andrea Ambu
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-09-02 Thread Andrea Ambu
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

2013-01-04 Thread Andrea Ambu
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

2013-01-15 Thread Andrea Ambu
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-03-28 Thread Andrea Ambu
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.

2013-03-29 Thread Andrea Ambu
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-04-27 Thread Andrea Ambu
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

2013-05-19 Thread Andrea Ambu
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-06-03 Thread Andrea Ambu
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)

2013-06-17 Thread Andrea Ambu
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

2013-06-27 Thread Andrea Ambu
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

2013-07-26 Thread Andrea Ambu
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-09-19 Thread Andrea Ambu
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-09-19 Thread Andrea Ambu
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-09-21 Thread Andrea Ambu
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-09-21 Thread Andrea Ambu
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

2013-10-23 Thread Andrea Ambu
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...

2013-12-23 Thread Andrea Ambu
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 Thread Andrea Ambu
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

2013-12-23 Thread Andrea Ambu
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-20 Thread Andrea Ambu
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 Thread Andrea Ambu
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

2014-04-30 Thread Andrea Ambu
+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