top of page

Ren'Pyユーザー向けPython講座 - 03.条件式

更新日:2021年5月8日

本シリーズでは、Ren'Pyユーザーが知っておきたいPythonの使い方をご紹介しています。

詳細および事前準備などは「00.はじめに」をご確認ください。


今回は「条件式」について説明します。好感度による分岐など、ビジュアルノベルでも出番の多い要素です。次回説明する「条件分岐(if文)」でも重要となる内容なのでしっかりマスターしてください。



 


準備

Ren'Pyのプロジェクトを1つ起動し、「Shift + O」を押してコンソールを開いておいてください。



まずは体験してみる

今回の内容は、慣れるまではなかなかピンとこないかもしれません。

何はともあれ、まずは"体験"してみましょう。

次の1行をコンソールに入力してエンターを押してみてください

(真ん中は「=」2つです)。

1 == 1

何か結果が表示されませんでしたか?

「True」と表示されているはずです。


こちらも入力してみましょう。

1 == 2

こちらは「False」が返ってくるはずです。




「==」の意味

先ほどの式で出てきた「==」は"左辺と右辺が等しい"という意味の記号です。

そして、等式「(左辺)==(右辺)」が成立しているとき「True」を返します

「1 == 1」は、明らかに左辺と右辺が同じ値なので(式が成立しているので)Trueが返ってきます。

「1 == 2」は…1と2は異なる値ですからFalseが返されます。



上記では左辺と右辺に数字を入れたので「こんな式に何の意味が…」と思われたかもしれませんが、本来は主に変数に対して使用します。

  • cf. 復習

    • 「=」は"左辺の変数に右辺の値を与える"(01.変数参照)

    • 「==」は"左辺と右辺が等しい"

これでもまだ「意味あるの…?」と思われるかもしれませんが。

今回の説明が本領発揮となるのは次回「04.条件分岐(if文)」のパートなので、ご期待ください。



※ True/False

ちなみに、ここで登場するTrue/Falseについて。

01.変数のパートで次のような説明があったのを覚えていますでしょうか。

今回は、変数に与えられるものとして次の3つを覚えてください。 ・数値(1, -15, 3.14, -28.5...) ・文字列('Hello World!', 'あああ', ...) ・True/False

式を入力した際に返ってくるTrueやFalseは、上記の3つ目の「True/False」です。

自信がない方は01.変数の説明を改めて確認してみてください。



「==」以外の式

ここまで「==」を用いて"左辺と右辺が等しいか"を確認してきました。

他にも、値の大小を比較することもできます。

練習がてら、1行ずつコンソールに入力して結果を確認してみてください

(「#」より後ろはコメントなので入力する必要はありません)。

hensu01 = 5   # (変数に適当な値を入れる)
hensu01 > 1   # 1より大きい
hensu01 >= 1   # 1と等しいか1より大きい
hensu01 < 1   # 1より小さい
hensu01 <= 1   # 1と等しいか1より小さい
hensu01 != 1   # 1ではない(ノットイコール)

数字以外の比較もできます。

### 文字列の比較 ###
hensu02 = "おはよう"
hensu02 == "こんにちは"   # -> False

### True/False ###
flag01 = True
flag01 != False   # -> True

そろそろ頭がこんがらがってきましたでしょうか。

今回はここまでにしましょう。お疲れ様でした。


cf. 関連ページ

Ren'Py部屋 @crAsmビジュアルノベル情報部屋

お問合せフォーム - ご質問・ご要望はこちら



 


もう少しだけ頑張れる!という方は、以下の内容もご覧ください。

頭の片隅に入れておくだけで結構です。



補足1:not

式の頭に「not」を付けると結果を反転させることができます。

1 == 1   # -> True
not 1 == 1   # -> False


補足2:andとor

2つ以上の式で判断することもできます。

(1 == 1) and (2 == 2) and (3 == 3)   # -> True
(1 == 1) or (2 == 1) or (3 == 1)   # -> True
  • and: 全てTrueのとき、True

  • or: 1つでもTrueのとき、True



補足3:結果を変数へ

比較結果を変数に入れることもできます。式が長くなった場合などに便利です。

hensu03 = ( 1 == 1 )
hensu04 = ( (1 == 1) or (1 == 2) )

尚、カッコ()は無くても良いのですが、今回は分かりやすくするために入れています。



以上です。


関連記事

すべて表示
bottom of page