2017-04-15 162 views
0

我想从Python(2.7)的JSON文件中提取特定的ID。这里是我的JSON数据是什么样子:从Python的JSON文件中提取特定的ID号

[{ 
"user_id": "78900", 
"instance": "441", 
"comment": "hello" 
}, { 
"user_id": "67732", 
"instance": "442", 
"comment": "" 
}, { 
"user_id": "55667", 
"instance": "443", 
"comment": "" 
}, { 
"user_id": "67890", 
"instance": "444", 
"comment": "" 
}, { 
"user_id": "59093899", 
"instance": "445", 
"comment": "" 
}] 

我的目标是把所有的数字为“user_ids”仅把这些放到一个数组。我对Python还是个新手,但为了从只包含数字的txt文件中提取数字,我之前运行了一个循环。这看起来是这样的:

list = [] 
qa_ids = open("numbers.txt") 
for line in qa_ids.readlines(): 
    list.extend(line.split()) 
qa_ids.close() 

不过,我想,我需要做不同的事情,因为:

  1. 我只是从包含其他文本的JSON数据拉动号

  2. 我从JSON数据中拉取而不是文字

任何帮助将不胜感激。

谢谢!

回答

1

1)加载该文件,并解析JSON:

json_data = json.load(open("filename.json")) 

2)使用列表理解让所有的用户ID。

user_id_list = [x.get("user_id") for x in json_data] 
+0

这是有效的。谢谢! – user7681184