2010-01-13 106 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