J'essaie de supprimer des clés spécifiques dans un dict python. Voici mon code ci-dessous :
for skin_name in data:
del data[skin_name]["bitskins"], data[skin_name]["lootfarm"]
del data[skin_name]["csgotm"], data[skin_name]["csmoney"]
del data[skin_name]["skinport"], data[skin_name]["csgotrader"]
del data[skin_name]["csgoempire"], data[skin_name]["swapgg"]
del data[skin_name]["csgoexo"], data[skin_name]["buff163"]
Voici le JSON que je charge en tant que dict python à l'aide du module json.
{"\u2605 M9 Bayonet | Damascus Steel (Factory New)": {"steam": {"last_90d": 308.19, "last_30d": 321.46, "last_7d": 335.23, "last_24h": 327.18}, "bitskins": {"price": "332.85", "instant_sale_price": "133.14"}, "lootfarm": 366.87, "csgotm": "283.815", "csmoney": {"price": 356.91}, "skinport": {"suggested_price": 252.46, "steam_price": 0, "instant_price": 0, "starting_at": null}, "csgotrader": {"price": 340.94}, "csgoempire": 222.3, "swapgg": 334.69, "csgoexo": 338.23, "buff163": {"starting_at": {"price": 261.75}, "highest_order": {"price": 241.88}}}
La sortie est la suivante :
{"\u2605 M9 Bayonet | Damascus Steel (Factory New)": {"steam": {"last_90d": 308.19, "last_30d": 321.46, "last_7d": 335.23, "last_24h": 327.18}}
Cela fonctionne mais ce n'est pas très compact en termes de code. Y a-t-il une meilleure manière de faire cela? Merci d'avance!
Vous pouvez l'essayer comme ceci :
data = {"\u2605 M9 Bayonet | Damascus Steel (Factory New)": {"steam": {"last_90d": 308.19, "last_30d": 321.46, "last_7d": 335.23, "last_24h": 327.18}, "bitskins": {"price": "332.85", "instant_sale_price": "133.14"}, "lootfarm": 366.87, "csgotm": "283.815", "csmoney": {"price": 356.91}, "skinport": {"suggested_price": 252.46, "steam_price": 0, "instant_price": 0, "starting_at": "null"}, "csgotrader": {"price": 340.94}, "csgoempire": 222.3, "swapgg": 334.69, "csgoexo": 338.23, "buff163": {"starting_at": {"price": 261.75}, "highest_order": {"price": 241.88}}}}
new_data= {}
for skin_name in data:
new_data[skin_name] = data[skin_name]['steam']
print(new_data)
Cependant, vous perdez alors la balise « vapeur ».
Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.
En cas d'infraction, veuillez [email protected] Supprimer.
laisse moi dire quelques mots