このサイトはアフィリエイト広告(Amazonアソシエイト含む)を掲載しています。 M5Stack

UIFlow2:Loop(繰り返し)repeatブロック、forブロックの使い方

今回は、繰り返しを制御するブロックについて解説します。
UIFlowでは、繰り返し処理に頻繁に使用される「repeatブロック」と「forブロック」に焦点を当てて説明していきます。

repeat ブロック

repeatブロック

このブロックは、条件が設立している間、処理を繰り返します。
繰り返しの条件としては、『while』と『until』を指定できます。

基本的な使い方

この例では、countが0より大きい間、ループは継続されます。
各繰り返しでcountが1ずつ減少し、0に達するとループが終了します。

<上記プログラムの実行結果>
5
4
3
2
1

『while』を『until』に変更することもできます。
上記と同じ結果を得るためには、繰り返し条件を『count <= 0』に修正します。

forブロック

forブロック

実際に使う機会の多いforループのブロックは次の2つ

このブロックは、繰り返しの回数を数値で指定するタイプ。
こちらのブロックはリストと組み合わせて使うタイプです。

数値で繰り返す例

この例では、1から5までの数(合計5回)に対して繰り返し処理が行われます。range()関数は指定された回数の範囲の数値を生成します。

fromからtoまで、by(step)で指定した数だけ繰り返し処理を行います。

from 1 to 5 by 2 の場合は、1 , 3 , 5 の3回の繰り返しとなります。

実行結果は下記となります。

1
2
3
4
5

リストと組み合わせた繰り返しの例

この例では、fruitsリストの各要素が順番にvalue変数に割り当てられ、その要素に対する処理(ここではprint)が行われます。

実行結果は下記

apple
banana
mango

リストについての解説は次の記事をご参考に。

1文字ずつ処理する繰り返しの例

この例では、wordに格納された文字列に対して、letterに1文字ずつ割り当てられて、それぞれの文字が表示されます。

上記の繰り返しブロックの実行例

m
a
n
g
o

まとめ

UIFlowで扱う主な繰り返し制御 repeatブロックとforブロックについて解説しました。

UIFlowのforループは、リスト、文字列、その他の繰り返し可能なオブジェクトを効率的に処理するための強力なツールです。
このループは、繰り返しの回数が事前に定義されている場合や、要素に対して1つずつ、何かしらの操作を実行する場合に特に有用です。

特にリストと組み合わせた使い方は多用されるのでしっかりとマスターしてください。

-M5Stack