web-dev-qa-db-ja.com

三重二重引用符の代わりに三重単一引用符を使用する場合

学ぶPython難しい方法、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:代わりに'''(三重引用符)を使用します。 """の代わりにそれを使用する理由がわかりますか?

'''ではなく"""を使用する理由がわかりません。同じ出力が得られます。トリプルダブルクォートの代わりにトリプルシングルクォートを使用する理由を誰かが説明してもらえますか?それらの違いは何ですか?

42
0101amt

必要になる唯一の理由""" の代わりに '''(またはその逆)は、文字列自体に三重引用符が含まれている場合です。

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

文字列に両方のトリプルシングルクォートandトリプルダブルクォートが含まれている場合、それらの1つをエスケープする必要がありますが、これは非常にまれな状況です。

75
Mark Byers