ホームページ >バックエンド開発 >Python チュートリアル >Python の基本チュートリアル - インデントと選択

Python の基本チュートリアル - インデントと選択

高洛峰
高洛峰オリジナル
2016-10-19 11:28:421232ブラウズ

インデント

Python の最も特徴的な機能は、コードのブロックをマークするためにインデントを使用することです。以下では例として if 選択構造を使用します。 If の後に条件が続き、その条件が true の場合、if に属するコード ブロックが実行されます。

まず C 言語の式を見てみましょう (これは Python ではなく C であることに注意してください!)

if ( i > 0 )
{
    x = 1;
    y = 2;
}

i > 0 の場合、括弧内に含まれる 2 つの代入演算を実行します。括弧内は if に属するブロック演算です。

Python では、同じ目的で、この文章は次のようになります

if i > 0:
    x = 1
    y = 2

Python では、i > 0 を囲む括弧が削除され、ブロックを示すために各ステートメントの末尾のセミコロンが削除されます。中括弧も消えています。

if... の後に (コロン) が追加されており、x = 1 と y =2 の前に 4 つのスペースのインデントがあります。インデントにより、Python はこれら 2 つのステートメントが if に属していることを認識します。

Python がこのように設計されている理由は、純粋にプログラムの見栄えを良くするためです。

if ステートメント

完全なプログラムを作成し、ifDemo.py という名前を付けます。このプログラムは if 構造を実装するために使用されます。

i = 1
x = 1
if i > 0:
    x = x+1
print x

$python ifDemo.py #

プログラムをifに実行すると、条件がTrueなので、x = x+1が実行されます。

print x ステートメントはインデントされていないため、if の外側にあります。

最初の文が i = -1 に変更されると、if が偽の値 (False) に遭遇すると、x = x+1 は if に属し、この文はスキップされます。 print x にはインデントがなく、if の外側にあり、スキップせずに実行を継続します。

所属を示すためにスペース4つのインデントを使用するこの書き方は、今後も見られるでしょう。強制インデントにより、プログラムの可読性が向上します。

より複雑な if 選択:

i = 1
if i > 0:
    print 'positive i'
    i = i + 1
elif i == 0:
    print 'i is 0'
    i = i * 10
else:
    print 'negative i'
    i = i - 1
print 'new i:',i

ここには 3 つのブロックがあり、if、elif、else によって導かれます。

Python は条件を検出します。if の条件が false であることが判明した場合は、次のブロックをスキップし、まだ false である場合は次の elif の条件を検出します。

上記の構造により、プログラムは3つの分岐に分かれます。プログラムは、条件に基づいて 3 つの分岐のうち 1 つだけを実行します。

if 全体を別の if ステートメントに配置できます。これは、if 構造のネストされた使用法です。

i  = 5
if i > 1:
    print 'i bigger than 1'
    print 'good'
    if i > 2:
        print 'i bigger than 2'
        print 'even better'

if i > 2 次のブロックは、その所属を示すために、if に対してスペース 4 つインデントされています。外側の if ではなく、この if。

概要

if文

の後のコロンは、所属を示すためにスペース4つでインデントされています

if  <条件1>:
    statement
elif <条件2>:
    statement
elif <条件3>:
    statement
else:
    statement


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