pythonic moyen de convertir des variables à la liste

J'ai une fonction dont l'argument d'entrée peut être soit un élément ou une liste d'éléments. Si cet argument est un élément unique alors je l'ai mis dans une liste afin que je puisse effectuer une itération sur l'entrée de manière cohérente.

Actuellement j'ai ceci:

def my_func(input):
    if not isinstance(input, list): input = [input]
    for e in input:
        ...

Je travaille avec une API existante, donc je ne peux pas changer les paramètres d'entrée. À l'aide de isinstance() se sent hacky, donc, il y a un bon façon de le faire?

re: bonne. En Python l'habitude terme est "Pythonic'. Il reconnaît qu'il y a de nombreuses façons de faire quelque chose, mais que certains sont plus dans l'esprit de la langue.

OriginalL'auteur hoju | 2009-09-13