47 votes

Quand utiliser des guillemets simples triples au lieu de guillemets triples doubles

Apprenez Python à la dure, exercice 10.2 :

 tabby_cat = "\tI'm tabbed in."
persian_cat = "I'm split\non a line."
backslash_cat = "I'm \\ a \\ cat."

fat_cat = """
I'll do a list:
\t* Cat food
\t* Fishies
\t* Catnip\n\t* Grass
"""

print tabby_cat
print persian_cat
print backslash_cat
print fat_cat

2 : utilisez ''' (triple-simple-quote). Pouvez-vous voir pourquoi vous pourriez l'utiliser au lieu de """ ?

Je ne vois pas pourquoi je pourrais utiliser ''' au lieu de """ . Cela me donne le même résultat. Quelqu'un peut-il m'expliquer pourquoi j'utiliserais des guillemets simples au lieu de guillemets triples ? Quelle est la différence entre eux ?

82voto

Mark Byers Points 318575

La seule raison pour laquelle vous pourriez avoir besoin de """ au lieu de ''' (ou vice versa) est que la chaîne elle-même contient un triple quote.

 s1 = '''This string contains """ so use triple-single-quotes.'''
s2 = """This string contains ''' so use triple-double-quotes."""

Si une chaîne contient deux triples guillemets simples et triples-doubles guillemets, vous devrez échapper à l' un d'eux, mais cela est une situation extrêmement rare.

3voto

wei Points 2557

J'ai trouvé que des situations similaires ont besoin de ''' au lieu de """, ce qui correspond à un symbole de guillemet double à la fin de la chaîne, vice versa.

Syntaxes invalides :

 print("""2 feet 4 inches can be written in 2' 4"""")
print('''2 feet can be written in 2'''')

Syntaxes valides :

 print('''2 feet 4 inches can be written in 2' 4"''')
print("""2 feet can be written in 2'""")

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X