Как проверить одно и то же условие для нескольких переменных и вернуть соответствующее сообщение для каждой из них?

#python

Вопрос:

Есть ли какой-нибудь простой способ сделать приведенный ниже код более простым в Python?

 if a is None:  return "Error - a has to be provided"   if b is None:   return "Error - b has to be provided"  if c is None:   return "Error - c has to be provided"  

Ответ №1:

Вы можете создать сопоставление между именем переменной и соответствующим ей объектом (просто чтобы избежать халтурного использования globals и тому подобного), а затем выполнить цикл над переменными:

 variables = {'a': a,  'b': b,  'c': c}  for var_name, var in variables.items():  if var is None:  return f"Error - {var_name} has to be provided"