2009-09-27 19 views

risposta

24

Nel prompt interattivo Python, se si restituisce una stringa, sarà visualizzato con le virgolette intorno, principalmente in modo che si sappia che è una stringa.

Se hai appena stampa la stringa, non verrà mostrata con le citazioni (a meno che la stringa ha citazioni in esso).

>>> 1 # just a number, so no quotes 
1 
>>> "hi" # just a string, displayed with quotes 
'hi' 
>>> print("hi") # being *printed* to the screen, so do not show quotes 
hi 
>>> "'hello'" # string with embedded single quotes 
"'hello'" 
>>> print("'hello'") # *printing* a string with embedded single quotes 
'hello' 

Se effettivamente non necessità di rimuovere leader/finale tra virgolette, utilizzare il metodo .strip della stringa per rimuovere le virgolette singole e/o doppie:

>>> print("""'"hello"'""") 
'"hello"' 
>>> print("""'"hello"'""".strip('"\'')) 
hello 
-2

Ecco un modo questo rimuoverà tutte le virgolette singole in una stringa.

def remove(x): 
    return x.replace("'", "") 

Ecco un'altra alternativa che rimuoverà il primo e l'ultimo carattere.

def remove2(x): 
    return x[1:-1] 
0

Rimuovere le virgolette singole attorno a una stringa.

print str(x)