小编Dan*_*iel的帖子

使用jq基于对象中变量的值选择对象

我有以下json文件:

{
    "FOO": {
        "name": "Donald",
        "location": "Stockholm"
    },
    "BAR": {
        "name": "Walt",
        "location": "Stockholm"
    },
    "BAZ": {
        "name": "Jack",
        "location": "Whereever"
    }
}
Run Code Online (Sandbox Code Playgroud)

我正在使用jq并希望得到'location'为'Stockholm'的对象的"名称"元素.

我知道我可以得到所有的名字

cat json | jq .[] | jq ."name"
"Jack"
"Walt"
"Donald"
Run Code Online (Sandbox Code Playgroud)

但考虑到子键的值(这里"location" : "Stockholm"),我无法弄清楚如何只打印某些对象.

bash json jq

202
推荐指数
4
解决办法
18万
查看次数

如何使用python一次从文件中读取两行

我正在编写一个解析文本文件的python脚本.这个文本文件的格式是这样的,文件中的每个元素都使用两行,为方便起见,我想在解析之前读取这两行.这可以用Python完成吗?

我想要一些像:

f = open(filename, "r")
for line in f:
    line1 = line
    line2 = f.readline()

f.close
Run Code Online (Sandbox Code Playgroud)

但这打破说:

ValueError:混合迭代和读取方法会丢失数据

有关:

python

74
推荐指数
6
解决办法
5万
查看次数

标签 统计

bash ×1

jq ×1

json ×1

python ×1