ホームページ  >  記事  >  バックエンド開発  >  Pythonのインデントとは何ですか

Pythonのインデントとは何ですか

藏色散人
藏色散人オリジナル
2019-07-05 10:18:0017354ブラウズ

Pythonのインデントとは何ですか

Python のインデントとは

厳密なコードのインデントは、Python 文法の主要な機能です。 C 言語ファミリー (C、C、Java など) の中括弧は、ほとんどの状況で必要であるのと同じくらい重要です。多くのコード仕様では、特定のルールに従って行を折り曲げてコードをインデントしてコードを記述するという要件もありますが、これらの要件は単に人 (プログラマ) が読み取り、使用、変更する際の便宜のためのものです。コンパイラまたはインタプリタの場合、完全に見て見ぬふりをしている。

しかし、Python インタプリタの場合、コードの各行の前のインデントには文法的および論理的な意味があります。 Python のこの機能は、Python ユーザーと非 Python ユーザーの間でしばしば論争を引き起こします。

実際、Python のコードの強制インデントは両刃の剣のようなもので、長所と短所があります。明らかに、コードのインデントの厳格な要件の下では、コードが非常に整然と標準化されており、見た目が美しく、可読性と保守性がある程度向上するという利点があります。

ただし、Python はコードのインデントが厳密で、他の言語から転校してきた人にとって、コンピュータや関連専攻の第一言語は一般的に C/C または Java であるため、文法スタイルは基本的に同じです。慣れるまでに時間がかかるかもしれません。 Python コードのインデントは非常に厳密であり、そのルールに従ってコードを書かないと、予期せぬインデントなどの構文エラーが発生したり、場合によっては論理エラーが発生したりすることがあります。

C 言語を比較として使用する:

次のコード セグメント:

    if(True)
    {
        x=1;//语句1
        y=2;//语句2
    }

C 言語では、中括弧 "{}" がコード ブロックの識別子として使用されます。 、上記の「ステートメント 1」と「ステートメント 2」は、「if」条件ステートメントに属するコード ブロックです。中括弧内では、ステートメントのインデントを考慮する必要はありません。ステートメントが「if」の中括弧は、「if」部分のコードに属します。ただし、コードの読みやすさを向上させるためには、通常、適切な形式のインデントが必要です。

Python では、コードのインデントが原因で構文エラーや論理エラーが発生する場合、通常 2 つの状況が考えられます。1 つはインデントにタブとスペースが混在している場合、もう 1 つはエディターがインデントを異なる方法で処理する場合です。以下に例を示します。コードは次のとおりです。

    def test():
    ——if True:
    ————print("a")
    ——else:
    ————print("b")
   .....print("c")

上記のコードでは、「——」を「TAB」キーを表し、「.」を使用してスペースを表しています。通常、上記は a と出力されると思いますが、実際には ac と入力されます。メモ帳などのエディタを使用すると、このようになります。これは、エディタでは TAB キーが 4 つのスペースとして認識されるためです。エディタで翻訳すると、インデントが異なるため、同じコード ブロックに属さなくなります。しかし、pycharm では TAB をスペース 2 つとして扱うためか、上記の書き方で期待どおりの結果が出力されます。

関連する推奨事項: 「Python チュートリアル

以上がPythonのインデントとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。