У меня есть переменная (объект из базы данных). В некоторых случаях эта переменная может иметь тип list , а в некоторых случаях dictionary .
Стандарт для цикла, если переменная список :
for value in object_values:
self.do_something(value)
Стандарт для цикла, если переменная словарь :
for key, value in object_values.items():
self.do_something(value)
Я могу использовать instanceof()
две проверки типа, но тогда мне все еще нужны две функции или if
с двумя for
циклами. Теперь у меня есть условие if
, которое вызывает одну из двух функций, одну для итерации в виде списка (например, iterate_list()
) и вторую для итерации в виде словаря (например, iterate_dict()
).
Есть ли лучший вариант, как элегантно и более питонически решить проблему, которую я не знаю, будет ли переменная списком или словарем?