我正在为我在课堂上正在做的一个项目读一些FitBit数据。 该文件是一个JSON,我以前从未使用过它。我试图用Python来阅读它,但我总是会遇到错误
我能够将数据转换成python字典,但是我很难分离出我想要的值。我正在尝试选择“bpm”后面的所有值,以便用它们构建一个数组
我收到的输出是:
========== RESTART: C:\Users\Addy\Physical Activity\JSON Import.py ==========
Traceback (most recent call last):
File "C:\Users\Addy\Physical Activity\JSON Import.py", line 13, in <module>
for i in data['values']:
TypeError: list indices must be integers or slices, not str
我明白为什么我会得到它,我也看到过其他例子,人们用整数值来搜索项目,但我认为这对我没什么帮助
以下是到目前为止我所掌握的,以及我试图阅读的数据:
import json
# Opening JSON file
f = open('/Users/Addy/Physical Activity/heart_rate-2020-10-06.json',)
# returns JSON object as
# a dictionary
data = json.loads(f.read())
# Iterating through the json
# list
for i in data['values']:
print(i)
f.close()
print(data)
[{'dateTime': '10/06/20 20:05:01', 'value': {'bpm': 69, 'confidence': 1}}, {'dateTime': '10/06/20 20:05:11', 'value': {'bpm': 68, 'confidence': 1}}, {'dateTime': '10/06/20 20:05:21', 'value': {'bpm': 70, 'confidence': 1}}, {'dateTime': '10/06/20 20:05:26', 'value': {'bpm': 71, 'confidence': 1}}, {'dateTime': '10/06/20 20:05:31', 'value': {'bpm': 72, 'confidence': 1}}, {'dateTime': '10/06/20 20:05:46', 'value': {'bpm': 73, 'confidence': 1}}, {'dateTime': '10/06/20 20:06:01', 'value': {'bpm': 76, 'confidence': 1}}, {'dateTime': '10/06/20 20:06:06', 'value': {'bpm': 75, 'confidence': 1}}, {'dateTime': '10/06/20 20:06:16', 'value': {'bpm': 72, 'confidence': 1}}]
data
是一个列表,而不是字典,因此您可以直接使用它数据是
list
的dicts
,然后键value
的值再次是dict
,您需要键bpm
的值相关问题 更多 >
编程相关推荐