Python - インデントと選択

高洛峰
リリース: 2016-10-19 11:48:09
オリジナル
1328 人が閲覧しました

インデント

Python の最も特徴的な機能は、インデントを使用してモジュールを記述することです。以下に if 選択構造を例に挙げてみましょう。 if の後には条件が続き、その条件が true の場合、if に属するいくつかのステートメントが実行されます。

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

if ( i > 0 )

{

x = 1;

y = 2;

}

このステートメントは、i>1 の場合、括弧内に含まれる 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 に変更されると、偽の値 (False) に遭遇した場合、x = x+1 は if に属し、この文はスキップされます。 print x にはインデントがなく、if の外側にあり、スキップせずに実行を継続します。

この、スペース 4 つのインデントを使用して所属を示すこの書き方は、今後も見られるものです。 Python はプログラムの読みやすさを重視します。インデントを強制するという要件により、プログラマはクリーンなプログラムを作成できます。

より複雑な 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

ここには if、elif で区切られた 3 つのブロックがあります、そうでない場合はリードします。

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

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

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

i = 5

if i > 1:

print 'i big than 1'

print 'good'

if i > 2:

print 'i big than 2'

print 'even better'

if i > 2 次のブロックは、if に属することを示すために、if に対してスペース 4 つインデントされています。アウターイフの。

summerifing IFステートメントの後のコロンは、提携を示すために4つのスペースでインデントされています。

elif

ステートメント

else:

ステートメント

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート