回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>现在(如果我没有错的话)我有一个包含一些信息的dicts列表;我想从列表中得到一个特定的项目,但是我很难找到我想要的项目;这就是我正在尝试的:</p>
<pre><code>stats = requests.get("https://lan.api.pvp.net/api/lol/lan/v1.3/stats/by-summoner/24244/"
"summary?season=SEASON2016&api_key=").json()
pprint([d['playerStatSummaries'] for d in stats if 'playerStatSummaryType' in d])
</code></pre>
<p>我通过观看一些示例尝试了这一点;它可能会起作用,但可能我做得不对,它的输出只是一个“[]”请求包含以下信息:</p>
<pre><code>"summonerId": 24244,
"playerStatSummaries": [
{
"playerStatSummaryType": "CAP5x5",
"wins": 20,
"modifyDate": 1453305771000,
"aggregatedStats": {
"totalChampionKills": 308,
"totalMinionKills": 4985,
"totalTurretsKilled": 36,
"totalNeutralMinionsKilled": 466,
"totalAssists": 255
}
},
{
"playerStatSummaryType": "CoopVsAI",
"wins": 34,
"modifyDate": 1453305771000,
"aggregatedStats": {
"totalChampionKills": 394,
"totalMinionKills": 2741,
"totalTurretsKilled": 57,
"totalNeutralMinionsKilled": 146,
"totalAssists": 336
}
},
{
"playerStatSummaryType": "CoopVsAI3x3",
"wins": 1,
"modifyDate": 1453305771000,
"aggregatedStats": {
"totalChampionKills": 6,
"totalMinionKills": 69,
"totalTurretsKilled": 2,
"totalNeutralMinionsKilled": 0,
"totalAssists": 3
}
},
{
"playerStatSummaryType": "RankedTeam3x3",
"wins": 0,
"losses": 0,
"modifyDate": 1353893998000,
"aggregatedStats": { }
},
{
"playerStatSummaryType": "RankedTeam5x5",
"wins": 0,
"losses": 0,
"modifyDate": 1354061714000,
"aggregatedStats": { }
}
</code></pre>
<p>假设我想访问“CoopVsAI”的信息,这是第二个;我想从中访问“totalChampionKills”;我该怎么做?因为它们是嵌套的,所以我不知道怎么做。我试过了</p>
<pre><code>for key, value in stats['playerStatSummaries'].items():
if key['playerStatSummaryType'] == "Unranked":
# do something
</code></pre>
<p>但那没用,所以,就这样,谢谢你的帮助:)</p>