2010-01-13 103 views

回答

3

与任何其他列表:

>>> len(a) 
3 

Python的方式来算子列表异构名单将是:

>>> sum(isinstance(i, list) for i in a) 
3 

你的第二个问题是不明确的。你不能读你的代码吗?

+0

我能读懂我的代码,我想知道,当我走过一个子列表...喜欢的元素后, 1,2,3然后4,5,6 – Bruce 2010-01-13 18:07:15

+0

@彼得:这是无法理解的。请提出另一个问题,详细说明你想要达成的目标。 – SilentGhost 2010-01-13 18:08:54

0

1)LEN(a)为3

0

子列表的数量

len(a) 

每个子列表是在列表中的一个元素,因此你的三个要素,他们每个人是有三个元素(这是数字)

0

列表,如果不同类型存储在一个列表中,您可以可否子表是这样的:

n=0 
for b in a: 
    if type(b)==type([]): 
     n+=1 

另外:

是,sum(1 for x in a if isinstance(x, list))是更Python

4
  1. sum(1 for x in a if isinstance(x, list))

    这是假设,有可能是比在列出了其他的事情。

  2. 编号委托给itertools通常意味着您放弃了解底层值的任何内容。

+0

错误代码:您需要求和整数 – SilentGhost 2010-01-13 18:01:09

+0

我认为您的意思是“sum(1 for x in a isinstance(x,list))”。或者“len(filter(lambda x:isinstance(x,list),a)” – 2010-01-13 18:04:15

+0

是的,现在修复。 – 2010-01-13 18:08:55

4

我发现此页面的目的是努力学习如何获得所有所有子列表的总和。我想通了,这个可以用做:

sum(len(x) for x in a) 

也许这将帮助别人......

+0

这可能会有所帮助,但它不能回答他的问题。 – 2014-03-12 20:31:58