Tôi đang sử dụng Python để phân tích cú pháp API cảnh sát của Vương quốc Anh. Điều tôi muốn là phân tích phản ứng JSON mà tôi đang nhận được để tính số lần một hành vi phạm tội nào đó xảy ra. Đây là ví dụ về phản hồi từ API.Số lần xuất hiện của mục trong phần tử JSON
{
category: "anti-social-behaviour",
location_type: "Force",
location: {
latitude: "53.349920",
street: {
id: 583315,
name: "On or near Evenwood Close"
},
longitude: "-2.657889"
},
context: "",
outcome_status: null,
persistent_id: "",
id: 22687179,
location_subtype: "",
month: "2013-03"
},
Sử dụng mã này
from json import load
from urllib2 import urlopen
import json
url = "http://data.police.uk/api/crimes-street/all-crime?lat=53.396246&lng=-2.646960&date=2013-03"
json_obj = urlopen(url)
player_json_list = load(json_obj)
for player in player_json_list:
crimeCategories = json.dumps(player['category'], indent = 2, separators=(',', ': '))
print crimeCategories
tôi nhận được một câu trả lời như thế này
"anti-social-behaviour"
"anti-social-behaviour"
"anti-social-behaviour"
"anti-social-behaviour"
"drugs"
"drugs"
"burglary"
Nếu tôi thay đổi của tôi cho vòng lặp để
for player in player_json_list:
crimeCategories = json.dumps(player['category'], indent = 2, separators=(',', ': '))
print crimeCategories.count("drugs")
sau đó tôi nhận được một câu trả lời như
0
0
0
0
1
1
0
Tìm kiếm diễn đàn hàng giờ không giúp ích gì cho tôi! Bất kỳ ý tưởng?
@martineau, cảm ơn, nó trông tốt hơn;) –
Cá nhân, tôi nghĩ rằng nó sẽ trông đẹp hơn bằng cách sử dụng 'print (dict (c))'. – martineau
@martineau, thêm kết quả đầu ra dưới đây –