2010-11-05 34 views
5

¿Cuál es la diferencia entre apóstrofes y comillas en Python?Diferencia entre '' y "" en Python

Hasta ahora sólo hemos sido capaces de encontrar una diferencia

print "'" 

print '"' 

print ''' 

print """ 

La primera sentencia print es la salida ' mientras que el segundo ". Sin embargo, la tercera declaración comienza un bloque de comentario.

Cualesquiera otras diferencias que deben ser conscientes de?

+1

no (quince caracteres). – SilentGhost

+2

¿Qué tutorial estás usando? Esto se explica bastante completamente en la mayoría de ellos. ¿Cuál encontraste que no explica esto? –

+5

"Cerrar como duplicado" debe tener su primo cercano ", respondió en la documentación". SO no debe convertirse en un espejo para cada pieza de información que ya está bien documentada en el lugar adecuado. –

Respuesta

14

print 'Hello' y print "Hello" son lo mismo y lo que utiliza es su preferencia personal. """ y ''' son para cadenas multilíneas.

>>> print """First 
Second 
Third""" 

First 
Second 
Third 
8

Python tiene un stri instalación de varias líneas ng que comienza con comillas triples.

También son de uso general para docstrings.

Un ejemplo de cadena de varias:

>>> x = """ wdd2ed 
... 2wdqd 
... d 
... dd 
... d 
... """ 
>>> 
>>> print x 
wdd2ed 
2wdqd 
d 
dd 
d 

>>> 

literales de cadena se pueden encerrar en la adecuación de las comillas simples (') o comillas dobles ("). Así "cadena" y 'cadena' son los mismos.

A continuación se proporcionan todos los detalles: http://docs.python.org/reference/lexical_analysis.html#string-literals

5

Las comillas triples no son para comentarios, son la sintaxis de las cadenas de varias líneas. A menudo se utilizan para docstrings, que cumplen una función similar a los comentarios de bloqueo en otros idiomas. Pero las cadenas de varias líneas se pueden usar como datos, al igual que las demás sintaxis de cadenas.

3

'...' cadenas y "..." son idénticas excepto que no necesita escapar ' dentro de una cadena ", ni viceversa.

Las comillas triples inician una cadena de varias líneas. Estos se utilizan a menudo para docstrings, que es probablemente donde se tiene la idea de que son comentarios.

2

' y " se puede usar de forma intercambiable para iniciar y finalizar una cadena (asegúrese de cerrar con la misma que abrió). Se proporciona como una conveniencia, por lo que no necesita escaparse de la cotización en la mayoría de los casos.

Por ejemplo, si desea la cadena say "hello" en idiomas que no proporcionan la opción alternativa, que tendría que escapar de ella con algo como "say \"hello\"" que es algo feo en comparación con 'say "hello"'

Del mismo modo, si sólo se podía use ' (no estoy seguro de ningún lenguaje que lo haga), entonces una cadena para decir bill's pony sería 'bill\'s pony' en lugar de "bill's pony".

1

Nota: en la cadena PHP citada por comillas simples 'no interpretar escapes como' \ n '' \ r 'etc. En python puede usar el modificador' r '. Por lo tanto, str=r'some \n string containing "\n" inside' - es cadena RAW y no contiene caracteres de nueva línea.

Cuestiones relacionadas