まず結論

Pythonで文字を値として扱うときは、クォートで囲みます。

print("こんにちは")

"こんにちは" は文字列です。

クォートで囲むことで、Pythonに「これは文字として扱ってね」と伝えています。

こんなときに読む記事です

次のようなところで止まった人向けです。

  • "モコ"" が何なのか分からない
  • 文字と変数名の違いで迷う
  • print(こんにちは) と書いてエラーになった

ここでは、文字列の細かい操作までは扱いません。

絵で見るなら

クォートは、文字を入れる小さな封筒のようなものです。

モコが こんにちは と書かれた紙を、クォートの封筒に入れると、Pythonは文字列として読めます。

封筒に入っていない文字は、Pythonが「名前かな?」と探しに行きます。

クォートがあると文字として読む

クォートで囲むと、文字そのものとして扱われます。

print("moco")

このコードは、画面に moco と表示します。

moco という名前の変数を探しているわけではありません。

クォートがないと、Pythonは名前として読もうとします。

print(moco)

この場合、Pythonは moco という変数を探します。

変数が作られていなければ、エラーになります。

よくある勘違い

クォートは、画面に表示したい記号ではありません。

print("こんにちは")

この結果は、ふつう こんにちは と表示されます。

クォートは、Pythonに文字列だと知らせるための印です。

変数記事で name = "モコ" を見たら、"モコ" という文字列に name という名前をつけている、と読めます。

手を動かすミニ練習

クォートありとなしを見比べてみましょう。

name = "モコ"

print("name")
print(name)

"name" は文字列です。
name は変数名です。