Как вернуть результаты функции в значения словаря в Python, когда передан ключ словаря в качестве аргумента? - PullRequest
0 голосов
/ 18 января 2019

Словарь состоит из тикеров финансовых инструментов из списка, значения которого должны быть числовыми (в этом случае мы можем сказать последнюю цену закрытия для этого тикера).

Пример:

tickers = ("ticker1", "ticker2")

mydict = { tickers : tickervalue }

Теперь я хочу, чтобы функция передавала значение тикера в качестве аргумента, используя этот аргумент, чтобы получить последнюю цену закрытия из источника, и вернуть ее обратно в словарь в качестве значения этого тикера:

def tickervalue(*tickers):
    # code here
    return closeprice

В общем, как мне структурировать мой код для достижения того, что мне нужно? Это правильно, как в:

mydict = { key : function_return } 

или есть другой способ сделать это?

1 Ответ

0 голосов
/ 18 января 2019

Используйте понимание слова:

tickers = ("ticker1", "ticker2")
mydict = {ticker: function(ticker) for ticker in tickers} 

Другая возможность - map, но я нахожу ее менее читабельной:

mydict = dict(zip(tickers, map(function, tickers)))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...