Según la documentación, son bastante intercambiables. ¿Existe alguna razón estilística para utilizar uno sobre el otro?
Si la cadena que tienes contiene una, entonces debes usar la otra. Por ejemplo, "Puedes hacer esto"
, o "Ha dicho "¡Hola!""
. Aparte de eso, simplemente deberías ser tan consistente como puedas (dentro de un módulo, dentro de un paquete, dentro de un proyecto, dentro de una organización).
Si tu código va a ser leído por gente que trabaja con C/C++ (o si cambias entre esos lenguajes y Python), entonces usar ''
para cadenas de un solo carácter, y ""
para cadenas más largas puede ayudar a facilitar la transición. (Igualmente para seguir otros lenguajes donde no son intercambiables).
El código de Python que he visto en la naturaleza tiende a favorecer "
sobre '
, pero sólo ligeramente. La única excepción es que """estos"""
son mucho más comunes que """estos"""
, por lo que he visto.
El gusto de tu equipo o las directrices de codificación de tu proyecto.
Si estás en un entorno multilingüe, puede que quieras fomentar el uso del mismo tipo de comillas para las cadenas que utiliza el otro idioma, por ejemplo. Por otra parte, personalmente me gusta más el aspecto de '