как сказать переменная итеративна, но не строка

У меня есть функция, которая принимает аргумент, который может быть как отдельным, так и двойным:

<code>def iterable(arg)
    if #arg is an iterable:
        print "yes"
    else:
        print "no"
</code>

и что

>>> iterable( ("f","f") )
yes

>>> iterable( ["f","f"] )
yes

>>> iterable("ff")
no

Проблема в том, что строка технически повторяема, поэтому я не могу просто перехватить ValueError при попыткеarg[1]. Я не хочу использовать isinstance (), потому что это не очень хорошая практика (или мне так сказали).

Ответы на вопрос(7)

Ваш ответ на вопрос