返回列表中的列表 - Python

时间:2016-11-01 12:41:18

标签: python string list

抱歉,这无疑已被问到,但我似乎无法找到它。我想要从python中的列表返回一个列表,但是当我尝试这样做时,它似乎将列表作为字符串返回,因此将始终访问第一个if语句。

def multpoly(entryList):

    x = entryList.index(0)

    if type(x) is list:
        print("list")

    if type(x) is str:
        combined_str = ""    

        for x in entryList:
            combined_str += x

        return combined_str

print(multpoly(["1", "2", "3"]))

1 个答案:

答案 0 :(得分:0)

def multipoly(l): #l not list
    x = l[0]
    if isinstance(x, str):
        return ''.join(l)
    elif isinstance(x, list):
        return [a for sublist in l for a in sublist]
    else:
        raise ValueError("Not a list of strings or list of lists")

使用isinstance检查类型。不要使用已经有意义的名称,例如list