|
Scan
Scan[f, expr]は,fをexprの要素それぞれに順に適用させて評価する.
Scan[f, expr, levelspec]は,levelspecによって指定されるexprの部分にfを適用する.
Scan[f, expr]は,exprの部分式にfを適用した結果を無視する.Mapとは異なり,Scanは,リターンするために,新しい式を構築することはない.
Returnを使ってScanから脱出することができる.Return[ret]は,Scanの最終的な値をretにする.リターン値が明示されていない場合,Scanが与える最終的な結果は,Nullである.
Throwを使って Scanから脱出できる.
Scanは,副作用を持つ割当てのような演算を式の部分に行うときに便利である.
レベルの指定についてはA.3.6 に解説している.
Scanにおけるlevelspecのデフォルト値は,{1}である.
exprがSparseArrayオブジェクトのとき,Scan[f, expr]はexprに明示的に現れる値あるいはサブアレーのみにfを適用する.
参照セクション:2.2.4.
次も参照:Apply,Map,Level,Sow.
バージョン1の新関数.バージョン3で大幅改訂
他の例
|