Python 获取非类型值的列表';无';

Python 获取非类型值的列表';无';,python,lambda,plotly,nonetype,Python,Lambda,Plotly,Nonetype,我是Python新手。我正在尝试获取非类型值的列表,以创建子图(plotly库)。创建具有不同规格的子批次需要以下设置: fig = tools.make_subplots(rows=2, cols=3, specs=[ [{'colspan':3}, None, None], map(lambda x: {}, ew) ], share

我是Python新手。我正在尝试获取非类型值的列表,以创建子图(plotly库)。创建具有不同规格的子批次需要以下设置:

fig = tools.make_subplots(rows=2, cols=3, specs=[ [{'colspan':3}, None, None],
                                                      map(lambda x: {}, ew) ],
                          shared_xaxes=False,   shared_yaxes=False,
                          start_cell='top-left', print_grid=False)
因此,根据列表“ew”中的值,需要一个非类型值列表。列表中的值可以不同,非类型列表也应该不同

  • 解决方案:字符串列表,列表理解:

    lst=','.join([str(None)表示电子战中的股票代码])

    问题:字符串-是否可以转换为非类型

  • 解决方案:Lambda函数,它为ew中的每个值插入None

    map(lambda x:None,ew)

    问题:列表的括号。无法摆脱它们

  • 我正在寻找的解决方案是:

    print(lst)
    None, None
    <type 'NoneType'>
    
    有没有办法得到这样一份清单?还是比嵌入式函数更好的解决方案

    编辑 由于在图中插入以下“lst”仍然存在错误:

    lst = print(*map(lambda x: None, ew), sep= ', ') #returns None, None 
    
    print('{lst}'.format(**locals())) #returns only None 
    

    ->这是可能的解释吗

    如果您使用的是Python 3.x,您可以尝试打印一个不带括号的列表,即使其中包含非类型数据:

    print (*lst, sep=', ') #lst = [None, None]
    
    它应该输出:

    None, None
    

    如果您使用的是Python2.x,您也可以通过使用来自未来导入打印功能的
    来实现这一点,您只需创建一个列表,然后稍后删除括号即可

    a = [None, None, None, None, None]  # an example of a list you might want
    
    您可以在不使用括号的情况下打印它,如:

    print str(a)[1:-1]
    

    找到了我的问题的答案: 首先用字典列一个完整的清单

    tr = []
    for ticker in ew:
        if ew.index(ticker) ==0:
            tr.append({'colspan': len(ew)})
        else:
            tr.append(None)
    
    进入图:

    fig = tools.make_subplots(rows=2, cols=3, specs=[ tr, map(lambda x: {},ew)],
                              shared_xaxes=False, shared_yaxes=False,
                              start_cell='top-left', print_grid=False)
    

    欢迎更多pythonic解决方案。

    len(ew)
    不起作用吗?不幸的是不起作用。获取[None,None]-括号似乎是问题所在,[None],[None]也不起作用。这似乎是正确的。但是,它在组合中不起作用。print(*[None]),print(*[None])起作用,但print(*[None,None],sep=',')不起作用。这是plotly函数的错误还是“逗号”有差异?需要非类型。因此,无法识别该字符串
    fig = tools.make_subplots(rows=2, cols=3, specs=[ tr, map(lambda x: {},ew)],
                              shared_xaxes=False, shared_yaxes=False,
                              start_cell='top-left', print_grid=False)