なでしこ開発者のクジラ飛行机です。今年も、なでしこの開発をたくさん行いました。一年の振り返りに、新機能やバージョンアップのハイライトを紹介したいと思います。
個人的に良かった機能は?…範囲オブジェクト!
2024年に追加した機能の中でも、特にユニークなのが範囲オブジェクトです。これは、今後のなでしこに新たな一歩を残すユニークな機能追加です。
特定の範囲を表すオブジェクトを生成するのが、範囲オブジェクトの機能です。
どのように使うのかと言うと
- 全角文字で「2…5」
- 半角文字で「2...5」
- 範囲関数を使って「2から5の範囲」
のように記述すると、範囲オブジェクトを生成するというだけの機能です。
これは、下記のプログラムをエディタで実行すると分かります。
3…5をJSONエンコードして表示
# → {"先頭":3,"末尾":5}
3から5の範囲をJSONエンコードして表示
# → {"先頭":3,"末尾":5}
なんと、先頭と末尾の二つの要素を持った辞書型データを生成するだけなんです。
範囲オブジェクト --- 何の役に立つの?
まずは、なでしこの「繰り返す」構文で、範囲オブジェクトを使えます。
3...5を繰り返す:
表示。
なでしこ3の簡易エディタで実行すると次のようになります。
範囲を利用する関数で役立つ
「乱数」関数も範囲オブジェクトに対応しています。次のように書くと、1から6の範囲のいずれかの整数を返します。
5回:
(1…6の乱数)を表示。
上記を実行すると、次のようになります。
範囲で配列の要素を参照する
次に、配列と範囲オブジェクトの組合せが便利です。「参照」関数を使えば配列の要素を参照できます。
A=[0,1,2,3,4,5,6,7,8,9]
Aの3…5を参照してJSONエンコードして表示
# → [3,4,5]
範囲で文字列の一部を参照する
同じような使い方ですが、文字列と範囲オブジェクトの組合せが便利です。「参照」関数を使えば文字列の一部を参照できます。
S=「0123456789」
Sの3…5を参照して表示
# → "345"
ぜひ自作関数でも活用してください
このように、範囲オブジェクトが利用できると、とても手軽に範囲を指定できます。
範囲オブジェクトは冒頭で見たように、単なる「{"先頭":3,"末尾":5}
」のような辞書型データです。これを利用すれば、自作関数でも便利に使えることでしょう。活用してみてください!