When to use triple single quotes instead of triple double quotes
Learn Python the hard way, exercise 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: Use '''
(triple-single-quote) instead. Can you see why you might use that instead of """
?
I can't see why I might use '''
instead of """
. It gives me the same output. Can someone explain me why I would use triple-single-quote instead of triple-double-quote? What's the difference between them?
Solution 1:
The only reason you might need """
instead of '''
(or vice versa) is if the string itself contains a triple quote.
s1 = '''This string contains """ so use triple-single-quotes.'''
s2 = """This string contains ''' so use triple-double-quotes."""
If a string contains both triple-single-quotes and triple-double-quotes then you will have to escape one of them, but this is an extremely rare situation.
Solution 2:
I found similar situations need ''' instead of """ which is when a double quote symbol at the end of the string, vice versa.
Invalid syntaxes:
print("""2 feet 4 inches can be written in 2' 4"""")
print('''2 feet can be written in 2'''')
Valid syntaxes:
print('''2 feet 4 inches can be written in 2' 4"''')
print("""2 feet can be written in 2'""")