Я не думаю, что это дублированный вопрос, поскольку мне нужно добавить в существующий словарь, а не создать новый.Как вставить кортеж в существующий словарь в Python
results = dict()
if xxx:
(rslt_string, rslt_msg) = func1
(rslt_string, rslt_msg) = func2
(rslt_string, rslt_msg) = func5
if yyy:
(rslt_string, rslt_msg) = func3
(rslt_string, rslt_msg) = func5
if zzz:
(rslt_string, rslt_msg) = func2
(rslt_string, rslt_msg) = func5
# How do I add each tuple to the results dict with rslt_string being the key and rslt_msg being the value so that I can do this below?
# Overwriting is ok (good even) if identical key
for (name, msg) in results:
if msg is not "":
test_failed(name)
Есть ли лучший шаблон Python для агрегирования результатов некоторых тестовых функций, статус вызова которых динамический? В моем случае у меня есть ряд тестов для запуска по результатам анализатора. В зависимости от типа выражения должны выполняться некоторые тесты (методы), но не другие. Я не знаю, какие из них понадобятся до запуска, но я хочу записать, какие из них, если они есть, потерпят неудачу.
Ahh, я пытался использовать обновление непосредственно на кортеже (или в списке). Благодарю. – BrianHVB
Привет @BrianHVB, если этот или любой ответ решил ваш вопрос, пожалуйста, рассмотрите [принятие его] (http://meta.stackexchange.com/q/5234/179419), нажав на галочку. Это указывает более широкому сообществу, что вы нашли решение и дали некоторую репутацию как самому, так и самому себе. Это не обязательно. – Bharel
Насколько я понимаю, 'dict' немного избыточно,' results.update ((func1(), func2(), func5())) 'тоже работает. – bereal