[Python] e = lp.parse(r'\x.(walk(x) & chew_gum(x))') -> ValueError: invalid \x escape
Valerio Maggio
valerio.maggio a gmail.com
Mar 14 Gen 2014 10:13:08 CET
On 14 Jan 2014, at 09:56, Marco Ippolito <ippolito.marco a gmail.com> wrote:
> Ciao a tutti,
> seguendo le indicazioni trovate qui: http://nltk.org/book/ch10
>
> ho scritto le seguenti righe di codice:
> lp = nltk.LogicParser()
> e = lp.parse(r'\x.(walk(x) & chew_gum(x))')
> print
>
> output: ValueError: invalid \x escape
Ciao Marco.
Ho provato a replicare il tuo codice senza ottenere alcun errore.
L'ho provato per scongiurare un possibile errore di implementazione in LogicParser (non si sa mai).
L'unico caso che può provocare il tuo errore è che tu non faccia attenzione ad anteporre la `r` davanti la stringa in questione
( r —> "raw string" - i.e., nessun escape dei caratteri "speciali" è richiesto).
Al contrario, senza l'uso di "raw string", l'escape di caratteri come `\` è sempre necessario (vale a dire: `\\x` nel tuo esempio).
Inutile sottolineare che la via di "raw string" è la più pulita.
--
valerio
Maggiori informazioni sulla lista
Python