51.md 1.3 KB
Newer Older
W
init  
wizardforcel 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
# JSON 和 python

> 原文: [https://pythonbasics.org/json/](https://pythonbasics.org/json/)

了解如何使用 python 解析 JSON 对象。

JavaScript Object Notation(JSON)是一种数据交换格式。 虽然最初是为 JavaScript 设计的,但如今,许多计算机程序都与 Web 交互并使用 JSON。

与网络的交互通常是通过 JSON 格式的 API(应用程序可编程接口)完成的。

**相关课程:** [完整的 Python 编程课程&练习](https://gum.co/dcsp)

## python JSON 示例

### 解析 JSON

您可以使用 python 解析 JSON 对象。 然后,该对象将转换为 python 对象。

首先创建一个 json 对象

W
wizardforcel 已提交
21
```py
W
init  
wizardforcel 已提交
22 23 24 25 26 27 28 29 30 31
{
 "gold": 1271,
 "silver": 1284,
 "platinum": 1270
}

```

Then parse the JSON object like this:

W
wizardforcel 已提交
32
```py
W
init  
wizardforcel 已提交
33 34 35 36 37 38 39 40 41 42 43
import json
obj = json.loads('{"gold": 1271,"silver": 1284,"platinum": 1270}')
print(obj['gold'])

```

### 从 URL 解析 JSON

您可以直接从网络上获取 JSON 对象,并将其转换为 python 对象。 这是通过 API 端点
完成的

W
wizardforcel 已提交
44
```py
W
init  
wizardforcel 已提交
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
import json
import urllib.request

# download raw json object
url = "https://api.gdax.com/products/BTC-EUR/ticker"
data = urllib.request.urlopen(url).read().decode()

# parse json object
obj = json.loads(data)

# output some object attributes
print('$ ' + obj['price'])
print('$ ' + obj['volume'])

```