python – 同时从多个列表中删除元素
发布时间:2020-12-20 11:33:09 所属栏目:Python 来源:网络整理
导读:我有三个具有相同长度的列表和另一个列表,用于存储我需要从所有三个列表中删除的元素的索引.这是我的意思的一个例子: a = [3,4,5,12,6,8,78,6]b = [6,1,2,784,43,2]c = [8,32,7,9,23] (都有len()= 9) 另一个列表包含我需要从所有三个列表中删除的元素的索引
我有三个具有相同长度的列表和另一个列表,用于存储我需要从所有三个列表中删除的元素的索引.这是我的意思的一个例子:
a = [3,4,5,12,6,8,78,6] b = [6,1,2,784,43,2] c = [8,32,7,9,23] (都有len()= 9) 另一个列表包含我需要从所有三个列表中删除的元素的索引: d = [8,3] (请注意,它已经排序) 我知道我可以从三个列表中删除一个元素: for indx in d: del a[indx] del b[indx] del c[indx] 我怎么能在一行中做到这一点? 解决方法
如果你的三个列表是2D numpy.array删除指定的列,那么numpy对于这样的东西很有用.
a = [3,23] big_array = np.array([a,b,c]) d = [8,3] 结果: >>> big_array array([[ 3,6],[ 6,2],[ 8,23]]) >>> np.delete(big_array,d,axis=1) array([[ 3,5],[ 6,[ 8,9]]) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |