[Python] Overloading "print"
Marco Beri
marcoberi a gmail.com
Mar 4 Giu 2013 17:22:13 CEST
2013/6/4 Vittorio Spina <vittorio.spina a gmail.com>
ho pensato a fare un overloading perchè non e' semplice cambiare tutti i
> print con un find&replace.
> la riga
>
> print "ciao mondo"
>
> dovrebbe diventare
>
> print_log("ciao mondo")
>
> e l'ultima parentesi tonda chiusa non saprei proprio come inserirla...
>
Il comando di Marco funziona ma solo se stampi una stringa e basta, se vuoi
stampare anche una variabile devi usare questo:
:%s/\<print \(.*\)$/print_log("\1")/
Attenzione però, la tua funzione print_log deve essere definita così:
def print_log(*args):
altrimenti non ti accetta più parametri come in questo caso:
print "Ciao", pippo, "pluto"
Infatti questa riga diventerebbe:
print_log("Ciao", pippo, "pluto")
Ciao.
Marco.
P.S. \< e \> in vim corrispondono al \b delle regex
--
http://beri.it/ - Un blog
http://beri.it/i-miei-libri/ - Qualche libro
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20130604/7c90f037/attachment.html>
Maggiori informazioni sulla lista
Python