回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我正在为我在课堂上正在做的一个项目读一些FitBit数据。
该文件是一个JSON,我以前从未使用过它。我试图用Python来阅读它,但我总是会遇到错误</p>
<p>我能够将数据转换成python字典,但是我很难分离出我想要的值。我正在尝试选择“bpm”后面的所有值,以便用它们构建一个数组</p>
<p>我收到的输出是:</p>
<pre><code>========== 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
</code></pre>
<p>我明白为什么我会得到它,我也看到过其他例子,人们用整数值来搜索项目,但我认为这对我没什么帮助</p>
<p>以下是到目前为止我所掌握的,以及我试图阅读的数据:</p>
<pre><code>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)
</code></pre>
<pre><code> [{'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}}]
</code></pre>