0

クラス インスタンスのリストを受け取る関数があり (ただし、単一のリストなしクラス インスタンスである場合もあります)、それがリストであるかどうかに関係なく、それを出力したいと考えています。私はあなたが次のようなことをすることでそれを行うことができることを知っています:

def func(obj):
    if type(obj) == list:
        for o in obj:
            print o
    else:
    print obj 

これを行うための高速でより良い方法はありますか、それともこれが最もクリーンな方法ですか?

4

5 に答える 5

1

最も単純な python コードを使用した私の最初の考えは次のようになります。

def func(obj):
    if not isinstance(obj,list):
        obj = [obj]
    for o in obj:
        print o
于 2013-07-24T01:55:47.877 に答える
0
def func(obj):
    return map(some_function,obj) if isinstance(obj,(list,tuple)) else some_function(obj)

多分?より良い定義について

于 2013-07-24T01:21:31.680 に答える