Pythonの文字列良い例: 'vs'

可能重複:
   Pythonでの一重引用符と二重引用符

私はPythonで文字列を処理しなければならないとき、次の両方のsintaxが受け入れられることを見ました:

mystring1  = "here is my string 1"
mystring2  = 'here is my string 2'

とにかくそこに何か違いはありますか?

何らかの理由で他のソリューションではなく1つのソリューションを使用する方が良いでしょうか?

乾杯、

6
間違いなく複製。あなたは検索機能を使っていませんでしたか?
追加された 著者 e-satis,
あなたは何が最も一般的な方法だと思いますか?
追加された 著者 Stefano,
仕事を終わらせるもの:)単一引用符を囲む必要があるときは、引用符を二重引用符で囲むか、その逆もできます。日々の使用には、好きなものを使用してください。
追加された 著者 AlG,
私は2つではなく1つのキーだけを打つ必要があるので、 'を使う傾向があります
追加された 著者 Rob Cowie,

7 答え

いいえ、ありません。文字列に一重引用符が含まれている場合は、二重引用符で囲む方が簡単です。これ以外にも、私のアドバイスはスタイルを選んでそれに固執することです。

別の有用なタイプの文字列リテラルは、複数の行にまたがる三重引用符付きの文字列です。

s = """string literal...
...continues on second line...
...and ends here"""

ここでも、一重引用符か二重引用符のどちらを使用するかはあなた次第です。

最後に、「生の文字列リテラル」について言及したいと思います。これらは r "..." r '...' に囲まれ、エスケープシーケンス( \ n など)そのように解析される。とりわけ、生の文字列リテラルは、正規表現を指定するのに非常に便利です。

Read more about Python string literals here.

5
追加された
生の弦についての混乱の1つは、人が時には特殊な弦であると考えることがあるということです。そうではありませんが、先頭の 'r'は、通常の文字のようにバックスラッシュを処理して、次のリテラルに対して異なる種類の処理を行うよう通訳に指示します。結果は普通の普通の文字列です。 「生」部分は結果ではなく文字通りです。だから、私はいつも "生の文字列リテラル"という言葉を使っていますが、これはリテラルの原点に焦点を当てています。
追加された 著者 PaulMcG,

どちらにも違いがないのは間違いありませんが、私はopensourceコミュニティで次のような多くの動作に遭遇しました。

  • " for text that is supposed to be read (email, feeback, execption, etc)
  • ' for data text (key dict, function arguments, etc)
  • triple " for any docstring or text that includes " and '
3
追加された
しなければならない理由はありません。私はそれを見たことがない。しかし、QWERTYキーボードのキーストロークは少なく、世界中のすべてのキーボードではありません。私のキーボードでは、 ""は使いやすいです。
追加された 著者 e-satis,
笑。私はちょうどPythonのソースコードを覆いました。これは '' でいっぱいです。さて、私はそのアサーションを取り除かなければならないと思う:-p
追加された 著者 e-satis,
+1は目的地に基づいて ''と "を使用するというアイデアではありますが、そのコンセプトが好きで、 :-)
追加された 著者 Joël,
docstringはいつもキーストロークを入力する必要がないため、 '' 'を使用しています。私はそれが私のプロジェクトをあまり深刻にしないことを願っています:)
追加された 著者 Xion,

Pythonは、最も効果を発揮するコードの量が最小限に抑えられています。より短いほうが良い。そして、 "は、" より1ドット短くなっています。

1
追加された

いいえ。スタイルだけの問題です。ただ一貫している。

1
追加された

違いはありません。

より良いことは議論の余地がある。文字列の場合は "..." 、文字の場合は '...' を使用します。これは他の言語と一貫しており、異なる言語。正規表現とSQLクエリの場合は、バックスラッシュと両方のタイプの引用符が頻繁に含まれるため、常に r '' '...' 'を使用します。

1
追加された

私は "を使用する傾向があります。なぜなら、他のほとんどのプログラミング言語で使用されているからです。

だから、本当に習慣。

1
追加された
私のキーボードでは "が必要な間にShiftキーは必要ないので、 'を好きです。
追加された 著者 heltonbiker,

誰もが指摘しているように、彼らは機能的に同一です。しかし、 PEP 257(Docstring Conventions)では、常に ""一貫性を保つためにドキュメントストリングの周りに "" を置く必要があります。

0
追加された