Re: [Python] Confronto due stringhe "dettagliato"
Pietro Battiston wrote: >> Grazie devo approfondire questa SequenceMatcher, non la conoscevo. > > Se vuoi evitare una libreria a costo di introdurre dello schifo, è pur > sempre una riga :-) > (lambda x, y : len([x[i] for i in range(min(len(x),len(y))) if x[i] > == y[i]])) (list('ciao'), list('cibo')) > 3 prova con "essere" e "sere" (chiariamo, dipende tutto da quello che l'OP deve farci con l'informazione cercata) btw questa versione è più compatta (anche se non meno schifosa :D) In [38]: f = lambda s1,s2: sum(1 for c1,c2 in zip(s1, s2) if c1 == c2) In [39]: f('ciao', 'cibo') Out[39]: 3 -- Under construction ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Confronto due stringhe "dettagliato"
Enrico Franchi wrote: >> In [38]: f = lambda s1,s2: sum(1 for c1,c2 in zip(s1, s2) if c1 == c2) > Stilisticamente i pythonisti sono un po' contrari alle lambda con nome. guarda che avevo detto chiaramente che era una porcata! > Se ci pensi il punto di lambda è creare una funzione *senza* darle un > nome. ovvio, ma... > Se poi prendi l'oggetto funzione e gli dai un nome, quale dovrebbe > essere il presunto vantaggio di non usare la classica def? ...mi ha consentito d'avere un one liner più corto :D come puoi vedere, l'equivalente ottenuta con "def" è più lunga di ben 4 caratteri! (oltre l'a-capo aggiuntivo che vuole ipython) In [1]: f = lambda s1,s2: sum(1 for c1,c2 in zip(s1, s2) if c1 == c2) In [2]: def f(s1, s2): return sum(1 for c1, c2 in zip(s1, s2) if c1 == c2) ...: -- Under construction ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Doxygen -- creare documentazione
castor91 wrote: > Scusate l'ignoranza...ma cos'è di preciso ?? :D grazie della pazienza :D doxygen è un programma che analizza dei file sorgenti alla ricerca di commenti e crea un documento (in .html, .pdf...) tipo questo: http://dbus.freedesktop.org/doc/api/html/index.html È nato per i progetti scritti in C++ ma supporta anche python (e tanti altri linguaggi). Già che ci sono vorrei segnalare anche epydoc [1] che è nato specificatamente per python :) e sphinx[2], anche se quest'ultimo è più complesso e permette di creare documenti anche indipendentemente dai sorgenti. [1] http://epydoc.sourceforge.net/ [2] http://sphinx.pocoo.org/ -- By ZeD ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] stringhe raw
Massimo Capanni wrote: > che differenza ci sarebbe ad utilizzare x = 'xxx' e x = r'xxx'? In questo caso nessuna. La differenza è quando sono usate sequenze di escape ('\t', '\n', ... insomma i barra-qualcosa). > oppure ci sono dei contesti dove conviene utilissare r''? I primi due che mi vengono in mente a caso: il modulo "re" e, se sei su windows, i path hardcoded ('\\' è veramente orripilante da scrivere). -- By ZeD ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] stringhe raw
Nicola Larosa wrote: >> i path hardcoded ('\\' è veramente orripilante da scrivere). > Tenendo anche presente che indicare il separatore di percorso su Windows > come r'\' non è portabile, mentre usare os.sep lo è. vero ma: os.sep.join("C:", "Documents and Settings", "Default User") non si può considerare più portabile di r'C:\Documents and Settings\Default User' Ovviamente la soluzione vera è *non* usare path hardcoded, e - se possibile - relegarli a file di configurazione o simili. Tuttavia, se proprio devo, preferisco usare le strighe raw, che almeno posso farie copia-e-incolla. -- By ZeD ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] stringhe raw
Daniele Varrazzo wrote: >>>> path hardcoded > Forse si riferivano a un più generico > > os.sep.join([base_path, some_prefix, some_other_crap, filename]) > > non necessariamente ad un path costante in ogni elemento. io mi riferivo ai path hardcoded, invece :) > Il modo "portabile" di concatenare file con os.sep o (meglio) os.path.join > si applica anche alle variabili, non solo alle costanti. ovvio :) Che abspath = base + '/' + relpath sia un ignominia è vero a prescindere, ma non c'entra con quello che dicevo io :) > In ogni caso quello che hanno omesso tutti di specificare è che i forward > slash ("/") funzionano anche su windows. "C:/autoexec.bat" viene gestito > correttamente dalle fuzioni python (non se va passato a tool esterni > ovviamente). umm, si, so che windows (da XP in poi?) dovrebbe supportare anche i forward slash, ma in teoria ci sarebbe anche il carattere ':' per i vecchi macOS (o non li usa più nessuno?) -- By ZeD ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] stringhe raw
Enrico Franchi wrote: > Ad ogni modo, sempre che io ricordi correttamente, venivano fatte delle > conversioni sensate in modo automatico. Ovvero, non mi ricordo di > particolari problemi con i Path. Ma essendo roba di diversi anni fa posso > essermi tranquillamente scordato le grane. cioé - in teoria - python permetterebbe di fare open("c:/prova") anche su windows 98 (che AFAIK non supporta i forward slash)? > Comunque direi che l'interesse di supportare MacOS 9 e' oggi piuttosto... > Come dire, fetish? $ pydoc os | grep os.sep - os.sep is the (or a most common) pathname separator ('/' or ':' or '\\') $ prenditela con gli autori del modulo os, allora :) In effetti con la "posixazione" degli OS moderni credo che il separatore sia diventato un non-problema. -- By ZeD ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Text editor o IDE?
Nicola Iarocci wrote: > Finora ho usato TextMate con una finestra Terminale (osx) e mi ci sono > trovato abbastanza bene. Dovendo lavorare su un progetto piuttosto > complesso (Django) ho provato a installare Eclipse/PyDev ma devo dire che > a una prima occhiata mi sembra esageratamente sofisticato. In ufficio > lavoro con Visual Studio tutto il giorno ed Eclipse mi ricorda molto > quell'ambiente. beh, alla fine sono IDE entrambi... Non l'ho provato personalmente, comunque se devi lavorare con django su planet.python.org s'è fatta parecchia "pubblicità" a http://www.jetbrains.com/pycharm che pare fatto "apposta" per lui > Voi con cosa lavorate ai vostri progetti Python? (vim | kate) + (python | ipython), ma sono pythonista solo a livello hobbistico, e per quella dozzina di script che manutengo sono sempre stati più che sufficienti. Al lavoro uso eclipse+java, ma mi sono scritto alcuni script per necessità con pydev, e, sebbene tutto vada, a volte mi sembra un po' troppo "cliccoso" per i miei gusti (e pydev mi autoimporta robe che non c'entrano niente, a volte) -- By ZeD ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Liste con Variabili
Matteo Boscolo wrote: > Avete qualche link / suggerimento che risolve questo tipo di > problematica?? domanda, ma come mai hai bisogno di risolvere un problema simile? comunque boh, a parte parserizzare ogni riga trovando lvalue e rvalue e assicurarsi che l'rvalue sia stato pre-definito non so che suggerirti -- By ZeD ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python