如何以变量命名Python字典?

2024-09-27 19:30:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图从coinmarketcapapi创建货币信息的dict,并以货币符号命名每个dict。最终目标:

# see coinmarketcap data entered into the dict
print(BTC['price']  + "\t$" + BTC['marketCap'])

# add arbitrary data to the BTC dict that other dicts might not have
BTC['founder'] = "Satoshi Nakamoto"

# see data from multiple sources in any given dict
print(BTC['symbol']  + " was founded by " + BTC['founder'])
print(LTC['symbol']  + " " + LTC['isMineable']  + " mineable")

BTC was founded by Satoshi Nakamoto
LTC is mineable

然而,当我得到coinMarketCapTicker['symbol'],它是一个字符串“BTC”时,我很难用这个值创建一个名为BTC的dict。你知道吗

import requests
import json

tickerURL = "https://api.coinmarketcap.com/v1/ticker/?limit=100"
request = requests.get(tickerURL)
coinMarketCapTicker = request.json()

while True:
    for x in coinMarketCapTicker

        tickerSymbol = x['symbol']

        # load current symbol's dict with the rest of the data from the API
        tickerSymbol = {"symbol" : x['symbol'], "price" : x['price_usd'], "marketCap" : x['market_cap_usd']}

    break

这使得一个名为“tickerSymbol”的dict被每个符号覆盖,而不是名为BTC、ETH、LTC等的dict

我试过这个,但没用:

x['symbol'] = {"symbol" : x['symbol'], "price" : x['price_usd'], "marketCap" : x['market_cap_usd']}

以及

str(x['symbol']) = {"symbol" : x['symbol'], "price" : x['price_usd'], "marketCap" : x['market_cap_usd']}

我有点困了,有什么想法吗?你知道吗


Tags: thedata货币ltcsymbolmarketpricedict
1条回答
网友
1楼 · 发布于 2024-09-27 19:30:59

最终,解决这一问题的一种方法是,为每个符号提供一个字典,其中包含所有的细节,并为每个符号字典提供一个级别的字典。你知道吗

我将dict的dict命名为“ticker”,因此这将在名为“ticker”的主目录dict中创建一个名为“symbol”的dict。整个符号dict用作ticker[“”],单个元素用作ticker[“”][“”]

在我发布的代码中:

ticker[x['symbol']] = {"symbol" : x['symbol'], "price" : x['price_usd'], "marketCap" : x['market_cap_usd']}

在循环中,用符号dicts填充ticker,同时填充符号dicts。就在休息前,a:

print(ticker['LTC']["price"])

输出“148.227”(Litecoin的当前美元价格),显示从API提要中提取的随机符号的数据已正确存储并可用。你知道吗

相关问题 更多 >

    热门问题