随時追加します
参照系
get(list, idx)
list の指定した要素を取り出す
echo get([1,2,3,4],2) " 3
これと同じ
letl=[1,2,3,4]
echo l[2] " 3
get
は dict に対しても使える。その場合は key に対応する値を返す。
第3引数を指定すると、値が見つからなかった場合のデフォルト値を返す。
echo get([1,2,3,4],10,123) " 123
empty(list)
list に要素が存在しない場合に 1
を返す。存在すれば 0
。
echo empty([]) " 1
echo empty([1,2]) " 0
ちなみに empty()
は list 以外に対しても使える。1
を返すケースは以下の通り。
empty({}) " dictの場合は item が存在しない
empty(0) " 数値の場合は 0
empty(v:false) " empty と判断される特殊な値
empty(v:null)
要素の追加・削除
insert(list, item, idx)
list の先頭に item を追加する。 idx を指定すると、その場所に追加する。
letl=[1,2,3,4]call insert(l,5)
echo l " [5,1,2,3,4]call insert(l,6,2)
echo l " [5,1,6,2,3,4]
add(list, item)
list の末尾に item を追加する。
item はあくまで1つの要素として扱われる。 item として list 型を指定すると、要素は1つ増えることに注意。
(複数の要素を追加したい場合は次の extend
を使う)
letl=[1,2,3]call add(l,4)
echo l " [1,2,3,4]call add(l,[10,20])
echo l " [1,2,3,4,[10,20]]
extend(list1, list2)
list1 の後ろに list2 を追加する。
letl=[1,2,3]call add(l,[11,12,13]
echo l " [1,2,3,11,12,13]
dict 版の extend(dict1, dict2)
もある。
remove(list, idx)
指定位置の要素を list から削除し、削除された値を返す。
要素がない場合エラーとなるので注意。
letl=[1,2,3]letv= remove(list,1)
echo v " 2letv= remove(list,100) " error