首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从json文件中提取信息,然后使用python进行排序。

从json文件中提取信息,然后使用python进行排序。
EN

Stack Overflow用户
提问于 2020-04-28 09:57:00
回答 3查看 94关注 0票数 0

我想从Json文件中提取“排名”信息。

基本上,我想得到前十名的加密货币名称。在给定的json屏幕截图中,每种加密货币都有其级别。无论如何,我可以在python中实现这一点吗?

提供指向所示https://api.nomics.com/v1/currencies/ticker?key=demo-26240835858194712a4f8cc0dc635c7a的图像的链接

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-04-28 10:13:55

代码语言:javascript
运行
复制
import requests
import json

resp = requests.get(url = "https://api.nomics.com/v1/currencies/ticker", params = {"key" :"demo-26240835858194712a4f8cc0dc635c7a"}) # Fetch response from API
resp = json.loads(resp.text)
final_names = []
for i in range(10): # JSON is ordered via Rank
    final_names.append(resp[i]["name"])

print(final_names) # Print final names

希望这能回答你的问题!

票数 0
EN

Stack Overflow用户

发布于 2020-04-28 10:04:58

试试这个:

代码语言:javascript
运行
复制
import json
# your saved json response from API
file_path = "full/path/to/file.json"
with open(file_path, "r") as f:
    data = json.load(f)
    top_10_names = [x["name"] for x in data[:10]]
    # since the data is ordered by rank, 
    # you can take only the first 10 elements.
    print(top_10_names)
票数 0
EN

Stack Overflow用户

发布于 2020-04-28 10:33:49

如果在json中默认情况下加密货币没有按等级排序,则解决方案:

代码语言:javascript
运行
复制
import requests
from pprint import pprint

top_all = []
data = requests.get(url="https://api.nomics.com/v1/currencies/ticker",
   params={"key": "demo-26240835858194712a4f8cc0dc635c7a"}).json()

for row in data:
    top_all.append({"name": row["name"], "rank": row["rank"]})

top_all = sorted(top_all, key=lambda x: int(x["rank"]))
pprint(top_all[0:10])
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61477459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档