擅长:python、mysql、java
<p>您可以定义一个函数并从该函数返回第一个计数,或<code>"NA"</code>。你知道吗</p>
<pre><code>def get_badge_count(data, badge='Challenge Patches'):
for item in data:
try:
for badges in item['renderData']['badgeCountData']['counts']:
if badges['typeLabel'] == badge:
return badges['count']
except KeyError:
pass
return "NA"
for kaid in profile:
data = requests.get('https://www.khanacademy.org/api/internal/user/{}/profile/widgets?lang=en&_=190424-1429-bcf153233dc9_1556201931959'.format(kaid)).json()
badgechall.append(get_badge_count(data))
</code></pre>
<p>之后,<code>badgechall</code>就是<code>[100, 'NA']</code>。如果要匹配另一个标记,可以将其作为参数提供,例如<code>get_badge_count(data, 'Sun Patches')</code></p>