Перебор переменных до существующего значения

Нужен способ получить значение из первой существующей переменной

Например:

>>>a = 1
>>>b = 2
>>>c = 3
>>>fn(a, b, c)
1

или

>>>b = 2
>>>c = 3
>>>fn(a, b, c)
2

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

UPD

Это могут быть и элементы списка, если он недостаточно длинный


Ответы (2 шт):

Автор решения: icYFTL
def kek(*args, **kwargs):
    [print(x) for x in args if x]
    [print(kwargs[x]) for x in kwargs]

kek(None,2,3,4,5,6,7,8,9,10, a='b')

Пользуйтесь *args и **kwargs

→ Ссылка
Автор решения: RomanR

Если знаешь все возможные переменные, то можно так, тогда ошибок о несуществующих переменных не будет

b = 2
c = 3
def func(a="", b="", c=""):
    lst = [a, b , c]
    for i in lst:
        if i != "":
            return i
            exit()



print(func(b, c))

2
→ Ссылка