2012-07-31 95 views
0

可能重复:
How can I put an element of a string in a list with a certain behaviour如何获得的元组的数量从列表的列表在python

假设我有两个列表:

list1 = [[(1, 1), (1, 2), (1, 3), (1, 4)]] 

list2 = ['A'] 

现在我需要类似

dic1 = {'A': len(list1)} 

现在len(list1)应该是4,因为我需要数组的数目在这种情况下是4

+2

看起来像list1包含1个列表,其长度是4.列表1的长度应为1. – NominSim 2012-07-31 15:37:49

+1

您是否可以从您以前的问题和答案中得到这个? http://stackoverflow.com/questions/11726305/how-can-i-put-an-element-of-a-string-in-a-list-with-a-certain-behaviour – 2012-07-31 15:50:08

回答

1

dic1 = {'A': len(list1[0])}

现在你得到的list1的长度,但list1是一个列表另一个列表中。使用这个,你正在访问列表中的元组列表。

0
dic1 = {list2[0]: len(list1[0])} 
0

添加一些野生的猜测什么你实际上是试图做:

>>> list1 = [[(1, 1), (1, 2), (1, 3), (1, 4)], [(2, 1), (2, 2)]] 
>>> list2 = ['A', 'B'] 
>>> dic1 = {key: len(tuples) for (key, tuples) in zip(list2, list1)} 
>>> dic1 
{'A': 4, 'B': 2} 
0

的问题是,list1只有一个项目 - 另一个列表。你想得到的是list1列表的长度。

因此,使用len(list1[0])而不是len(list1),你应该很好。