Как функция Python может перебирать значения из списка или словаря без явных проверок типов? [дубликат]Python

Программы на Python
Ответить
Anonymous
 Как функция Python может перебирать значения из списка или словаря без явных проверок типов? [дубликат]

Сообщение Anonymous »

В некоторых ситуациях функция может получать разные виды коллекций. Например, иногда список значений, а иногда словарь.
Цель состоит в том, чтобы просто перебрать значения, независимо от того, являются ли входные данные списком, кортежем, набором, генератором или словарем.
Наивная реализация может явно проверять типы, что быстро становится беспорядочным по мере появления большего количества возможных типов.
Пример проблемы:

Код: Выделить всё

    def process_values(obj):
# iterate over values in obj
pass
В идеале эта функция должна работать с такими входными данными, как:

Код: Выделить всё

[1, 2, 3]
{"a": 1, "b": 2, "c": 3}
(10, 20, 30)
Каков идиоматический подход Python для реализации такого поведения без необходимости писать несколько проверок типов?

Подробнее здесь: https://stackoverflow.com/questions/799 ... dictionary
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»