0
votes

Extraire des informations du fichier JSON, puis trier à l'aide de Python

Le fichier JSON Je souhaite extraire des informations "Rank" de

En gros, j'aimerais obtenir les 10 meilleurs rangs cryptocurmentés. Chaque cryptocurrence a son rang dans la capture d'écran JSON donnée. Y a-t-il de toute façon que je puisse mettre en œuvre cela dans Python?

Fournir un lien à l'image indiquée https://aPi.nomics.com/v1/currency/Ticker? Key = Demo-26240835858194712A4F8CC0DC635C7A


2 commentaires

Qu'est-ce que vous devez extraire ... Noms seulement?


Oui, nom seulement!


3 Réponses :


0
votes

Essayez ceci:

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)


2 commentaires

Hey, que se passe-t-il si je voulais les commander en descendant?


@AARYAMNANN Obtenez les 10 rangs les plus basses que vous voulez dire?



0
votes
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
Hope this answers your question!!!!

0 commentaires

0
votes

solution si les cryptocurrences ne sont pas triés par rang fort> par défaut dans votre JSON:

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])


2 commentaires

Hey, que se passe-t-il si je voulais les commander en descendant?


Simplement, passez à trié (..., inverse = true) (explication: Stackoverflow.com/Questtions/4183506/... )