目前正在使用python3
我试图创建一个功能来提取加密货币的价格并将它们发送到我的手机。我成功地下载了所有内容并为比特币工作,但我字典中的其他货币都没有正确拉动。任何帮助将不胜感激。
client = Client(api_key = 'insert coinbase api key', api_secret='insert coinbase api secret', api_version = '2017-12-13')
def buyPrice():
priceDict ={ 'BTC-USD': '', 'ETH-USD': '', 'LTC-USD': ''}
for key in priceDict:
if priceDict[key] == '':
current_price = client.get_buy_price(currency_pair =priceDict[key])
priceDict[key] = current_price['amount']
else:
continue
return priceDict
buyPrice()
ex输出:
{'BTC-USD': '18897.59', 'ETH-USD': '18897.59', 'LTC-USD': '18897.59'}
答案 0 :(得分:1)
根据您提供的内容,我相信您应该这样做
client.get_buy_price(currency_pair = key)
而不是
client.get_buy_price(currency_pair = priceDict[key])
在为参数currency_pair
提供密钥的值时,而不是名称。
正如我的评论中所述,您应该按照以下步骤迭代您的键和值(这是更正后的版本)。
def buyPrice():
priceDict ={ 'BTC-USD': '', 'ETH-USD': '', 'LTC-USD': ''}
for key, value in priceDict.items():
if value == '':
current_price = client.get_buy_price(currency_pair = key)
value = current_price['amount']
else:
continue
return priceDict
答案 1 :(得分:-3)
这应该是你的迭代方法
for key in priceDict.keys():
我还建议您使用if priceDict.get(key)
因为它不仅速度更快,而且有时会阻止KeyError
例外