gpt4 book ai didi

arrays - 尝试访问元素时路径表达式无效

转载 作者:行者123 更新时间:2023-12-02 02:42:19 24 4
gpt4 key购买 nike

当尝试更改数组中的单个元素时,我得到尝试访问元素时无效的路径表达式 - 但仅当从 --rawInput 捕获数组时.

示例:

# input: [ 1, 0 ]
. as $list | $list[0] = 30
# output: [ 30, 0 ]

但这不起作用:

# input: 1,0
split(",") | map(tonumber) as $list | $list[0] = 30
# Invalid path expression near attempt to access element 0 of [1,0]

有什么想法吗?

最佳答案

由于以下原因,您的尝试失败:

Note that the LHS of assignment operators refers to a value in .. Thus $var.foo = 1 won’t work as expected ($var.foo is not a valid or useful path expression in .); use $var | .foo = 1 instead.

来自Assignment section of the jq manual .

它可能只在您的第一个 jq 命令中有效,因为 $list. 是相等的。

接下来您可以使用以下内容:

split(",") | map(tonumber) as $list | $list | .[0] = 30

或更简单地针对您的情况:

split(",") | map(tonumber) | .[0]=30

关于arrays - 尝试访问元素时路径表达式无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59324676/

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