使用API​​ JSON进行Python货币计算

时间:2017-06-30 08:34:12

标签: python json api

我是这个Python世界的新手,我试图使用API​​来进行基本货币计算。我可以得到如下输出:

{'USD': 1.13}

这个,但我希望它只是

1.13

代码:

import requests

inputCurrency = 'EUR'
outputCurrency = 'USD'

p = {"inpc":inputCurrency, "outc":outputCurrency}

url = 'https://somewebsite/api/data'

r = requests.get(url, params=p)

print(r.json())

1 个答案:

答案 0 :(得分:1)

服务器返回了一个JSON对象。 .json()响应的r方法对其进行解码,并返回已解码的对象,即Python dict

您想要与'USD'键对应的值。 只是做:

import requests

inputCurrency = 'EUR'
outputCurrency = 'USD'

p = {"inpc":inputCurrency, "outc":outputCurrency}

url = 'https://somewebsite/api/data'

response = requests.get(url, params=p)
json_data =response.json()
print(json_data['USD'])

如果数据的结构更复杂,如评论所示:

json_data = { "status": 1, "data": [ { "time": "2015-08-30T07:56:28.000Z", "usd": 1.17 }, { "time": "2015-08-30T08:56:28.000Z", "usd": 1.27 }, { "time": "2015-08-30T09:56:28.000Z", "usd": 1.28 }]}

你可以提取相关部分:

data = json_data['data']

这是一个词典列表。然后,您可以打印第一个:

print(data[0]['usd'])
# 1.27

或全部打印:

for day_value in data:
    print(day_value['usd'])