美好的一天。 我似乎无法找到这个问题的明确答案。我试图破译一个大的JSON文件,但我不知道数据的确切标题,所以我想使用通配符。
我尝试过使用' [*]' ' []'我能想到的任何其他事情 - 没有运气!
现在我的代码看起来像这样:
import json
from pprint import pprint
with open('data.json') as data_file:
data = json.load(data_file)
pprint(data['Descriptions']['WILDCARD']['name'])
我使用的是python版本2.7.1,但也有3.3。我可能这样做完全错了......
任何帮助表示赞赏! : - )
答案 0 :(得分:4)
没有这样的事情。您需要查看data['Descriptions'].values()
中的所有项目并检查
'name'
字段。完成这些检查后,您可以将其打包到列表中。这是一个列表理解,应该完成工作...(我认为: - )......
names = [d['name'] for d in data['Descriptions'].values()
if isinstance(d, dict) and 'name' in d]
答案 1 :(得分:0)
#include <iostream>
using namespace std;
struct Node {
Node **child;
int data;
};
class Tree {
public:
Node *root;
Tree() {
root = NULL;
}
private:
void add(Node *r, int data, int size) {
if (r == NULL) {
Node *newnode = new Node;
newnode->child = new Node*[size];
for (int i = 0; i < size; ++i) {
newnode->child[i] = new Node;
newnode->child[i]->child = 0;
}
newnode->data = data;
r = newnode;
}
}
public:
void add(int data, int size) {
add(root, data, size);
}
};
int main() {
Tree t;
t.add(5, 20);
cout << t.root->data << endl;
return 0;
}
已实施为something[*].x
修改强>
如果[item.x for item in something]
是something
,则上述情况属实。对于字典,它是:
list
答案 2 :(得分:0)
我来晚了,但是我建议在使用json对象或API调用时不要使用 pprint 。
执行类似## print(json.dumps(data [key],indent = 4))###