@nekosta0207 (@nekkosta)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

関数の理解 基礎

解決したいこと

エラーを解消、
インデントについて少しでも理解したい。

def sayhello2(name):
  print("こんにちは、" + name + "さん。")
sayhello2("フタバ")

出力結果は
こんにちは、フタバさん。

となるはずが、エラー表示がされています。
SyntaxError: invalid syntax
3行目を2行目と同様にインデントしても動きません。

0 likes

4Answer

Pythonのインデントは半角スペースまたはTabしか使えず、全角スペースだとエラーになります。
記載のコードには全角スペースが含まれているので、エラーとなっています。
半角スペースまたはTabにするとエラーはなくなると思います。

また、質問をする際はコードブロック(```)を利用すると見やすくなるので、ご活用ください。

def sayhello2(name):
    print("こんにちは、" + name + "さん。")
sayhello2("フタバ")
2Like

Comments

  1. @nekosta0207

    Questioner

    ありがとうございます。全角が入っているか確認をし、もう一度半角で入力してみます。コードブロックについても教えていただきありがとうございます。今後は意識してコードを入力してみます。

  print("こんにちは、" + name + "さん。")
↑↑全角のスペースになっています。
半角のスペースに変えてください。

1Like

Comments

  1. 追伸;

    REPLで実行する場合は、インデントの終わりに空行が必要です。

    def sayhello2(name):
        print("こんにちは、" + name + "さん。")
    
    sayhello2("フタバ")
    
  2. @nekosta0207

    Questioner

    IDLEshellにて練習しておりまして、ご指摘の通りに3行目で1行改行を入れてみたら、実際には2行の空行が入り見事に結果が得られました。
    的確なアドバイスありがとうございます!

  3. 解決でよろしければ、当Q&Aをクローズしてください。

全角スペースでインデントしてると思います。
半角スペースまたはTABでインデントしてはどうでしょうか?

1Like

Pycharmなどのエディタを使うととても便利なので、おすすめです。文法のハイライトやエラーのチャック機能も備わっていて、とても便利でうs。

0Like

Your answer might help someone💌