Sikuliで学ぶRPA超入門の第4回です。いままで、「Hello」と1回だけ入力させていましたが、今回は5回書かせます。プログラム基礎構造の最後章「繰り返し処理」です。

【Point】プログラムの基本構造

この連載ではRPAの基本を解説すると同時にプログラミングの基礎も解説しています。どちらも同じ原理だからです。今回は3番目の繰返し処理を解説します。

【プログラムの基本構造】

【RPA超入門】は無料のオープンソースRPA「SikuliX」を使ってRPAの基礎を学ぶコーナーです。プログラミングもできるようになりますので、プログラミング未経験者にもおすすめの連載です。

第1回から順番に実行することをお勧めします。
≫過去の記事一覧【RPA超入門】

 

まず準備をしましょう

準備1:別名で保存しましょう

ファイル名に日時を入れるには」で使ったプログラムを変更して使いますが、区別するために別名で保存します。SikuliX開発画面のメニュー「ファイル」をクリックし(図1➊)、「名前を付けて保存」をクリックします(図1❷)。

【Hint】前回の続きではない場合
前ページのプログラム作成のあと、SikuliX開発画面を終了した方は、「簡単なロボを作ってRPAの威力を実感しよう」のおまけ3(ページの一番下の方)にプログラムの開き方を載せていますので、参考にして「JB100103」を開いてから、この処理を行ってください。

図1 名前を付けて保存

 

図2のポップアップが出るはずです。

図2 保存ダイアログ(1)

 

フォルダ名に「JB100104」と書き加えて(図3➊)、「Save」をクリックしてください(図3➋)。

図3 保存ダイアログ(2)

 

準備2:余計なファイルを削除しましょう

前回、日時を付けてファイルを保存したので、いくつかファイルがデスクトップ上にできているはずです。今回のプログラムにとっては邪魔なので「Hello.txt」以外のSikuliXが作ったテキストファイルは削除してください(図4)。

図4 デスクトップ上のファイル

 

ロボの開発を始めます

プログラムを書こう

13行目の「type(“Hello”)」をコメントアウトしましょう。そして、14行目からリスト1のプログラムを記述してください。


num = 0
while num < 5:
    type("Hello")
    type(Key.ENTER)
    num += 1

リスト1 繰り返し処理

 

15行目の「while num < 5:」を入力してEnterキーを押すと、16行目は右側にインデント(字下げ)されるはずです。できましたか?SikuliXのソースコードウィンドウで見てみるとリスト2のようになっているはずです。

リスト2 現在のプログラム

 

Program解説

14行目の「num = 0」は、前回のページの変数を理解していれば、わかりますね。「num」というのは変数です。変数numに0(ゼロ)を入れた(代入した)ということになります。

15行目の「while num < 5:」は、whileの後の条件式「num < 5」が「真」である間は繰り返して実行しますよ、ということです。「真」?中学生のときに習ったような??という方多いと思います。もう少し噛み砕いて言うと、「変数numが5より小さい間は繰り返す」ということです。

繰り返されるプログラムはリスト3の青枠部分になります。インデントしている部分はwhileの影響を受けて、繰り返し処理されます。

リスト3 while文の説明

 

リスト3の青枠部分のプログラムを一つずつ見ていきましょう。

  1. Helloとタイプする
  2. Enterキーを押す
  3. 変数numに1を足す

3番目に変数numに1を足すということはどういう動きになるでしょう?最初0がnumが入っています(13行目)ので、繰返し1回目ではnumには1が代入されます。2回目には2が代入され、、というわけです。

【Hint】変数numに1を足す

変数numに数値を足しながら増やしていくことを「インクリメントする」と言います。

他のプログラム言語では「num = num + 1」と書く場合もあります。これでは長いので、Pythonでは「num += 1」と書けるようになっています。

逆に数値を減らしていく場合は「num -= 1」と記述します。

【Hint】インデントで影響範囲を表す

リスト3のようにインデントでwhileの影響範囲を表現するのがPythonの特徴です。他のプログラム言語では()や{}で囲うことで表現することが多いです。

他の多くのプログラム言語では、Pythonのように強制的にインデントしなくてはいけない、ということがないので、「読みづらくなる」こともあります。

 

実行しよう

今回書くプログラムはこれだけです。しっかりとプログラムを保存してから実行してください。「Hello.txt」をダブルクリックしてメモ帳が開くと、続けて「Hello」が5回入力されます(図5)。別名で保存されて、メモ帳が閉じたら完了です。

図5 メモ帳にタイプされた状態

 

まとめ

このページでは繰返し処理を学びました。同時に変数も使いました。短いプログラムでしたが、とても重要なことが詰まっています。これで、プログラムの基本構造3つ「順次処理」「条件分岐」「繰り返し処理」を網羅したことになります!おめでとうございます!

 

関連ページ

Topトップページ

SikuliXで学ぶRPA超入門【豊富な画像と丁寧な説明です】

 

<<前のページ

【Sikuliで学ぶRPA超入門‐第3回】変数を学ぼう

 

>>次のページ

【RPA超入門】今度は日本語であいさつだ!関数を作ろう

研修のご依頼
RPAやプログラミングの研修講師をお請けしています。著書「オープンソースで作る!RPAシステム開発入門」をお読みいただいた法人様に対する教育/サポートもお請けできます。

 

質問/お問い合わせ
RPAや自動化全般についての疑問・質問・お仕事の依頼などはお問い合わせフォームよりお気軽にお問い合わせください。