2. Python の論理演算とプロセス ステートメント
論理演算
Python は、基本的な論理演算を提供します。ブール演算 ( and、or、not ) だけでなく、2 つの値の関係を比較するための比較演算子 ( ==、!=、<、>、<=、>= ) も提供します。これらの演算子は、式が true か false かを判断するために使用され、それによって条件判断が行われます。
論理演算規則は次の表のとおりです(x=1、y=2)。
オペレーター | 説明する | 例 | 結果 |
---|---|---|---|
そして | AND演算 | 真と偽 | 間違い |
または | OR演算 | 正しいか間違っているか | 真実 |
ない | 操作ではありません | 違います | 間違い |
== | 等しい | x == y | 間違い |
!= | 等しくない | x != y | 真実 |
< | 未満 | x < y | 真実 |
> | 以上 | x > y | 間違い |
<= | 以下 | x <= y | 真実 |
>= | 以上 | x >= y | 間違い |
Python では、次のコードを通じて論理演算を試すことができます。
# 比较运算符示例
x = 1
y = 2
# 逻辑与(and)
result_and = True and False # 结果为 False
# 逻辑或(or)
result_or = True or False # 结果为 True
# 逻辑非(not)
result_not = not True # 结果为 False
# 等于:x是否等于y
result_equal = x == y # 结果为 False
# 不等于:x是否不等于y
result_not_equal = x != y # 结果为 True
# 小于:x是否小于y
result_less_than = x < y # 结果为 True
# 大于:x是否大于y
result_greater_than = x > y # 结果为 False
# 小于等于:x是否小于等于y
result_less_equal = x <= y # 结果为 True
# 大于等于:x是否大于等于y
result_greater_equal = x >= y # 结果为 False
制御フローステートメント
初心者の Xiaobai にとって、Python 制御フロー ステートメントには条件ステートメント (if ステートメント) とループ構造 (for ループと while ループ) が含まれていることを知っていれば十分です。
条件文(if文)
条件ステートメントは、さまざまな条件に基づいてさまざまなコード ブロックを選択的に実行するために使用されます。最も一般的な条件ステートメントは if ステートメントで、条件が true であるかどうかを判断し、対応するコードを実行するために使用されます。
以下は単純な if 制御条件です。
対応するコード例:
# 定义年龄变量
age = 18
# 判断年龄是否大于等于18
if age >= 18:
# 输出成年了
print("成年了")
else:
# 不满足if进入else输出未成年
print("未成年")
ループ構造(forループ、whileループ)
- for ループ for
ループは、シーケンス内の要素 (リスト、文字列など) を走査し、対応する操作を実行するために使用されます。
# for循环 列表示例
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:
print(fruit)
上記のコードを実行した結果は次のようになります。
# for循环 字符串示例
fruit = 'apple'
for i in fruit:
print(i)
上記のコードを実行した結果は次のようになります。
range() 関数を組み合わせて数値を反復することもできます。
# 使用range()的for循环
for i in range(5):
# 这里会输出0,1,2,3,4
print(i)
上記のコードを実行した結果は次のようになります。
- while ループ
while ループは、指定された条件が満たされなくなるまで、コードのブロックを繰り返し実行します。
# while循环示例
count = 0
while count < 5:
print(count)
count += 1
上記のコードを実行した結果は次のようになります。
キーワードを続行、中断、および渡す
- Continue キーワードの使用法
continue キーワードは、現在のループの残りのステートメントをスキップし、ループの次のラウンドに進みます。
['apple', 'banana', 'orange']、バナナを食べるのが好きではないので、バナナをスキップしたいのですが、これは continue キーワードで実現できます。コード例:
# for循环 continue示例
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:
if fruit == 'banana':
#如果fruit等于banana就跳过
continue
print(fruit)
上記のコードを実行した結果は次のようになります。
- Break キーワードの使用法
Break キーワードは、ループ ステートメントを終了し、現在のループ構造を強制的に停止するために使用されます。
[「リンゴ」、「バナナ」、「オレンジ」]、ここではバナナが大嫌いですが、バナナに出会うと他には何も欲しくなります。これは、break キーワードを使用して実現できます。コード例は次のとおりです。
# for循环 break示例
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:
if fruit == 'banana':
#如果fruit等于banana就结束
break
print(fruit)
上記のコードを実行した結果は次のようになります。
- pass キーワードの使用は、
コード ブロックのプレースホルダーとして機能します。バナナの処理方法をまだ理解していない場合は、最初にプレースホルダーを配置できます。コード例:
# for循环 pass示例
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:
if fruit == 'banana':
# 如果fruit等于banana就啥也不干
pass
print(fruit)
上記のコードを実行した結果:
pass を付けないとどうなるかお聞きしたいのですが、構文エラーが発生します。なぜなら、後ろは新しい次のレベルのコード ブロックを表しており、そこには何かがなければなりません。このとき、パスを使用してその位置を占めることができます。
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:
if fruit == 'banana':
print(fruit)
制御フロー文とelifのネスト
ここには要件があり、18 歳以上は成人として輸出され、18 歳未満は未成年者として輸出され、3 歳未満は幼児として輸出されます。
- 解決策 1: ネストされたコントロール
要件は次のフローチャートのように理解できます。
対応するコード例:
# 定义年龄变量
age = 2
# 判断年龄是否大于等于18
if age >= 18:
# 输出成年了
print("成年了")
else:
# 不满足if进入else输出未成年
if age <= 3:
print("小屁孩")
else:
print("未成年")
コードを実行した結果は次のようになります:
- オプション 2: elif 概念を導入する
elif の役割は、if ステートメントの条件が false のときに次の条件が true であるかどうかを確認し、true の場合は対応するコード ブロックを実行し、そうでない場合は次の条件の確認を続けるか、else ブロック内のコードを実行することです。 (あれば) 。
上記の要件に基づいて、サンプルコードは次のようになります。
# 定义年龄变量
age = 2
# 判断年龄是否大于等于18
if age >= 18:
# 输出成年了
print("成年了")
elif age <= 3:
print("小屁孩")
else:
print("未成年")
コード例では次のようになります。
- 年齢が 18 歳以上の場合、「成人」と出力されます。
- 年齢が 3 以下の場合は、「little kid」と出力されます。
- 年齢が 18 以上でも 3 以下でもない場合は、「未成年」と出力されます。
コードを実行した結果は次のようになります: