我有一个列表( CustomerID ),其中包含列表,数字,元组,我需要执行以下任务:
a。提取子列表[1,2],[2,3],[4,6],[6,9],元组(1,2,3)(76,5,3)和数字并插入单独的列表中。 b。 List和Tuple中的访问元素,例如:[1,2] elemt0,elemt1
CustomerID = [[1,2],[2,3],[4,6],[6,9],3,7,2,(1,2,3),(76,5,3)]
请帮助我。
我尝试了以下代码,但无法访问元素,并说新列表(lstEle)不是列表类型。
while(a <= len(lst)-2):
lstEle.append(lst[a])
a +=1
答案 0 :(得分:2)
尝试此代码
$(document).ready(function(){
$('.btn-send-reply').click(function(){
$( "input[name*='message']" ).val("");
})
})
答案 1 :(得分:0)
使用isinstance
例如:
CustomerID = [[1,2],[2,3],[4,6],[6,9],3,7,2,(1,2,3),(76,5,3)]
lst = []
tpl = []
dgts = []
for i in CustomerID:
if isinstance(i, list):
lst.append(i)
elif isinstance(i, tuple):
tpl.append(i)
else:
dgts.append(i)
print(lst)
print(tpl)
print(dgts)
输出:
[[1, 2], [2, 3], [4, 6], [6, 9]]
[(1, 2, 3), (76, 5, 3)]
[3, 7, 2]
答案 2 :(得分:0)
作为补充,我认为使用函数式编程是一个很好的例子。您可以轻松使用filter
,但与reduce
一起尝试也很有趣。
from functools import reduce
CustomerID = [[1,2],[2,3],[4,6],[6,9],3,7,2,(1,2,3),(76,5,3)]
reduce(
lambda acc, cur:
{ **acc, type(cur).__name__:[cur] + acc[type(cur).__name__] },
CustomerID,
{'list':[], 'tuple':[], 'int':[]}
)
也许一开始它看起来有些尴尬,但是一旦您了解了reduce
,您就会发现它相当优雅(至少我是这样认为的)。
而且,它可以很好地推广到新情况(例如新类型),而无需进行太多更改...
PS:我不明白您问题的最后一部分...