[Python] Re: doppio backslash non va

Alessandro Sarretta alessandro.sarretta a inwind.it
Sab 3 Feb 2007 10:31:43 CET


SMZE ha scritto:
> Il giorno sab, 03/02/2007 alle 00.27 +0100, Valentino Volonghi aka
> Dialtone ha scritto:
>   
>> On Fri, 02 Feb 2007 22:59:42 +0100, SMZE <smze a eutelia.com> wrote:
>>     
>>> Certo che il discorso è chiaro! Ma se io ho a che fare con stringhe come
>>> '\\x' mentre vorrei '\x' come faccio?
>>>       
>> Ahah :). Tu non puoi essere vero!
>>     
>  e invece sono vero!!
>   
>> Sei un grande comunque, mi hai dato qualche minuto di risate tra un esame
>> e l'altro.
>>     
> Ridi quanto vuoi... fatto sta che STRINGHE del tipo '\x' non esistono e
> non possono essere manipolate... che STRINGHE '\\x' siano INTERPRETATE e
> mi diano ciò che voglio, non mi consente di manipolarle...
> Continua a ridere pure tra un esame e un'altro...
>
>   

Allora, per curiosità mi sono letto tutta questa serie di messaggi, 
visto che sono un pivello di Python e di programmazione in generale e 
che leggere problemi che hanno gli altri mi può aiutare a comprendere il 
linguaggio.
Alla terza mail di risposta ho capito (o credo di aver capito) anch'io 
che ti assicuro non ho una gran testa...
In Python il carattere '\' è particolare perché è un carattere di 
escape, e per fargli capire che vuoi mettere in una stringa solo '\' 
devi scrivere '\\'.
Quindi se tu scrivi la stringa '\\x' tu hai inserito proprio la stringa 
'\x', che è quello che vuoi tu.
Se infatti vuoi avere la stringa '\\', dovrai scrivere '\\\\'

 >>> a = '\\\\x'
 >>> a
'\\\\x'
 >>> print a
\\x
 >>> len(a)
3

Ora, io non mi permetto di rispondere mai a domande su questa lista 
perché non so praticamente niente di Python, ma qui c'è gente che Python 
lo usa da anni per lavorare che utilizza il proprio tempo anche per 
aiutare chi ne sa meno. E questo non è dovuto, è tutto libera iniziativa 
e grande disponibilità e tanta tanta tanta pazienza.
Quindi, alla ventesima volta che ti viene risposto in modo esauriente al 
tuo quesito, credo che tu non possa PRETENDERE che gli altri ti entrino 
nella testa per cercare di spiegarti ancora una volta il concetto...

Alessandro



Maggiori informazioni sulla lista Python