vim 按索引为列表赋值

vim assign value to list by index

如何重新分配 vim 中列表的值?

g:my_list = [1,2,3,4]
function! My_func(num)
   set g:my_list[num] = 20
endfunction

:call My_func(2)
E518: Unknown option: g:my_list[num] = 

变量需要使用let,选项需要使用set

此外,您需要在函数参数前加上前缀 a:

let g:my_list = [1,2,3,4]
function! My_func(num)
   let g:my_list[a:num] = 20
endfunction

:call My_func(2)

参见: