Nicola Larosa ha scritto:
SMZE wrote:
Il problema è che se fai a='\\x' a varrà '\\x' mentre io vorrei che
valga '\x' e basta. Con
a=r'\x'
a
'\\x'

con print a otterrei quello che voglio. Ma posso assegnarlo ad una
variabile? non penso.

Oh, l'eterna lotta tra ciò che appare, e ciò che è. Il noumeno, o il
fenomeno? Il genotipo, o il fenotipo? Chi avrà ragione, "a" o "print a"?
Cosa c'è *veramente* nella variabile "a"? Scopriamolo!

a = '\\x'
len(a)
2

Mmh... son due caratteri, non tre. Vediamo il secondo:

a[1]
'x'

...e se il secondo è 'x', il primo è...

a[0]
'\\'

Ma come! Ora il primo sono due?!?


> [...]

Questa è assolutamente da aggiungere nelle FAQ!

Comunque aggiungo che l'interprete interattivo, quando deve valutare un oggetto (che è quello che gli fai fare con '>>> a'), usa la funzione repr.

Ossia
repr(a)

repr (ridefinibile per una classe, aggiungendo un metodo __repr__), di default restituisce una rappresentazione dell'oggetto, utile per il debug.



Saluti  Manlio Perillo
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a