シナリオは
これまでのところ、我々は実行された文のシーケンスであり、このコードの構造は、一般的に、シーケンシャル構造と呼ばれるPythonコードを書きました。しかし、唯一のシーケンス構造は、このような私たちはゲームをデザインするなど、すべての問題を、解決していないプレイヤーは1000ポイント、協議会が終了した後、ゲームを取得し、ゲーム最初のハードルクリアランス条件は、我々は最初のプレーヤーを入力するかどうかを決定する必要がありますさに応じてポイントを獲得2つのオフ、またはそれは二つの枝を持っていますプレーヤー「ゲームオーバー」を、教えて、これら二つのブランチの一方のみが実行されます。多くの同様のシーンがありますが、私たちは「分岐構造」や、この構造を呼び出します「を選択アーキテクチャ。」あなたは、少なくとも5つのこのような例を考えることができるはずです、私たちの分を与え、かつ迅速にしてみてください。
if文を使用して
分岐構造を構築するために、Pythonで、場合に使用することができ、他のelifキーワード。いわゆるキーワードがある場合のように、特別な意味を持つことで、それ以外、特に分岐構造は、あなたが(他の識別子を使用、実際には許可されていない)、変数名として使用できないことは明らかであるキーワードのために構成されています。次の例では、分岐構造を構築する方法を示します。
"""
用户身份验证
Version: 0.1
Author: 骆昊
"""
username = input('请输入用户名: ')
password = input('请输入口令: ')
# 用户名是admin且密码是123456则身份验证成功否则身份验证失败
if username == 'admin' and password == '123456':
print('身份验证成功!')
else:
print('身份验证失败!')
唯一の説明は、異なる言語でなどC / C ++、Javaの、あると、Pythonは、コードのブロックを構築するために括弧を使用するものではありませんが、以上を実行する必要がある場合は、条件が満たされた場合にインデント方法の使用は場合に、コードの階層を設定します同じインデントを維持しながら、連続コードif文限り、それらが文の同じ複数を有するように、他の言葉で、インデントされ、それらは全体の等価が行われ、同じブロックに属しています。
あなたはより多くの枝を構築したい場合はもちろん、もし...のelif ...他に...構造、例えば、以下の区分的機能評価を使用することができます。
"""
分段函数求值
3x - 5 (x > 1)
f(x) = x + 2 (-1 <= x <= 1)
5x + 3 (x < -1)
Version: 0.1
Author: 骆昊
"""
x = float(input('x = '))
if x > 1:
y = 3 * x - 5
elif x >= -1:
y = x + 2
else:
y = 5 * x + 3
print('f(%.2f) = %.2f' % (x, y))
もちろん、それは入れ子にすることができる分岐構造の実際の開発によると、例えば、評価にも決定されて与えられたかどうかは、クリアランスや宝物小道具(例えば、2または3の照明星)を取得数の後に、あなたのパフォーマンス、その後、次のように私たちは、ネストされた分岐構造、すなわち、上記のコードを呼び出す新しい枝が、書き込むことができ、私たちは、新たな分岐構造場合は内部を構築する必要があり、それ以外の共感のelifは、再構成することができます見て。
"""
分段函数求值
3x - 5 (x > 1)
f(x) = x + 2 (-1 <= x <= 1)
5x + 3 (x < -1)
Version: 0.1
Author: 骆昊
"""
x = float(input('x = '))
if x > 1:
y = 3 * x - 5
else:
if x >= -1:
y = x + 2
else:
y = 5 * x + 3
print('f(%.2f) = %.2f' % (x, y))
注:あなたは、両方が最後に書かれた自分を感じることができる1が優れているです。私たちは多くの単語「フラットが良いネストされたよりも。」ように記載された前理事会は、Pythonの禅で深刻な影響コードを有していてもよく 、 より後に入れ子構造の入れ子のレベルため、コード「フラット」を推進する理由読書のため、平坦化構造を使用することができたときに入れ子には使用しないでください。