如何在Python中仅打印JSON之类的字符串

贾纳备份

我从某些命令下面得到此输出(作为字符串)。我需要获取的价值Value

输出(字符串):

[{"LockIndex":0,"Key":"bitesize-troubleshooter-2/CONSUL_TEST-2","Flags":0,"Value":"dGVzdF9kYXRhLTI=","CreateIndex":338871,"ModifyIndex":341922}]

我正在使用jq以下方法来仅获取(过滤)Value(即:)值,dGVzdF9kYXRhLTI=如下所示:

jq '.[] | .Value' "[{"LockIndex":0,"Key":"bitesize-troubleshooter-2/CONSUL_TEST-2","Flags":0,"Value":"dGVzdF9kYXRhLTI=","CreateIndex":338871,"ModifyIndex":341922}]"

这给出了如下错误:

jq:错误:无法打开文件[{LockIndex:0,Key:bitesize-troubleshooter-2 / CONSUL_TEST-2,Flags:0,Value:dGVzdF9kYXRhLTI =,CreateIndex:338871,ModifyIndex:341922}]:没有此类文件或目录

在执行此命令之前,python我需要确保它在终端中确实有效,然后可以使用python

如何只过滤输出中的值Value当我grep它时,它仍然给出整个字符串。

穆雷尼克

如果您已经在使用Python,为什么不使用Python解析字符串而不是执行字符串jq呢?

import json
jsonString = '[{"LockIndex":0,"Key":"bitesize-troubleshooter-2/CONSUL_TEST-2","Flags":0,"Value":"dGVzdF9kYXRhLTI=","CreateIndex":338871,"ModifyIndex":341922}]'
parsed = json.loads(jsonString)
value = parsed[0]['Value']

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章