gpt4 book ai didi

list - 如何在 Vim 脚本中展平嵌套列表?

转载 作者:行者123 更新时间:2023-12-05 01:19:58 26 4
gpt4 key购买 nike

我发现一些 Vim 列表功能不能像我想象的那样工作。
例如:

let list0 = [1, [1, 2]]
echo count(list0, 1)

它返回 1 ,但我希望它返回 2 .所以我认为这些函数不能深入嵌套列表,只能在第一级工作。

我想在这里我应该将嵌套列表扩展为这样的普通列表:
list0 = [1, 1, 2]

如何展平嵌套列表?

最佳答案

"代码来自bairui@#vim.freenode
"https://gist.github.com/3322468
功能!展平(列表)
让 val = []
对于 a:list 中的元素
if type(elem) == type([])
调用扩展(val,展平(elem))
别的
调用添加(val,elem)
万一
卸载元素
结束
返回值
端功能

这里unlet elem是必要的。因为elem变量是 改变 ,它是一个列表项,或者一个列表,并且 VimL 不支持将列表项分配给一个列表,反之亦然。

关于list - 如何在 Vim 脚本中展平嵌套列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11912688/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com