2024-04-23 11:29:41 发布
网友
我在阅读python烹饪书,它提到enumerate()返回一个迭代器,该迭代器生成所有形式(index,item)的对(两项元组)
我可以用d=dict(enumerate(L))来做一个dict
就我的理解而言,我认为enumerate()返回一个元组。dict()可以将元组变成dict
所以我试着:
dict((1,2))
弹出TypeError。在
所以我想知道enumerate到底返回了什么对象,哪个dict()可以将它变成dict?在
这是它自己的类型:
>>> type(enumerate([])) <class 'enumerate'>
^{}构造函数接受iterable对的iterable序列。在
iterable
您的代码段dict((1,2))无法工作,因为您正在传递一个元组(1,2),一个key,value对。它在(1,2)上迭代并查找整数,同时需要序列。在
(1,2)
key,value
相反,您应该传递一个包含一对的元组:
>>> dict(((1,2),)) {1: 2}
或者,例如,列表:
^{}返回一个enumerate对象,它是元组对序列的迭代器:
enumerate
>>> enumerate(range(10)) <enumerate object at 0x1059b0f50> >>> list(enumerate(range(10))) [(0, 0), (1, 1), (2, 2), (3, 3), (4, 4), (5, 5), (6, 6), (7, 7), (8, 8), (9, 9)]
希望你能把事情弄清楚。在
这是它自己的类型:
^{} 构造函数接受
iterable
对的iterable
序列。在您的代码段
dict((1,2))
无法工作,因为您正在传递一个元组(1,2)
,一个key,value
对。它在(1,2)
上迭代并查找整数,同时需要序列。在相反,您应该传递一个包含一对的元组:
或者,例如,列表:
^{pr2}$^{} 返回一个
enumerate
对象,它是元组对序列的迭代器:希望你能把事情弄清楚。在
相关问题 更多 >
编程相关推荐