簡體   English   中英

在python中從字典中提取數據

[英]Extracting data from dictionary in python

我有一個來自Chuck博士的程序,可以從這些數據中打印出計數的總和。 問題是。 如果有很多,JSON的計數將顯示為“ 2”。

import json
import urllib

url="http://python-data.dr-chuck.net/comments_42.json"
uh = urllib.urlopen(url)
data = uh.read()
print 'Retrieved',len(data),'characters'
print data

info = json.loads(data)
print 'User count:', len(info)

此行print 'User count:', len (info)顯示的輸出為2。當有大量數據時,因此我只能訪問2個數據,而其余部分則不能。

我不知道為什么。 我可以解決總和部分。 只是不明白為什么我只能訪問前2個數據,而其余JSON被忽略了。

json具有兩個頂級屬性:注釋和注釋。 這就是為什么長度為2的原因。

這可能會給您您想要的:

len(info["comments"])

要計算評論數:

print 'User count:', len(info["comments"])

要打印“總數”:

count = 0
for comment in info["comments"]:
    count += comment["count"]
print 'Total count:', count

因此,您的json解析為dict

{"note":"bla", "comments":[...]}

它的長度應為2,因為在此字典中只有兩個鍵。 處理案例的正確方法是獲取評論本身並對其進行計數。

例如:

len(data.get('comments',[]))

Json由注釋和注釋組成。 注釋內部還有另一個對象數組。 如果要訪問該數組,則必須使用此info['comments'] ,然后,如果需要該數組的長度,則可以使用len(info['comments'])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM