簡體   English   中英

Python根據第一項從2d數組中刪除元素

[英]Python removing elements from a 2d array depending on first item

如果我在python中有一個2d數組,比如說

lst = [['a','1', '2'], ['b', 1, 2], ['c', 1, 2], ['b', 3, 4]]

我想要一種方法從第一項是'b'的lst中刪除任何項目,以便您返回:

[['a','1', '2'], ['c', 1, 2]]

如果只使用內置的庫,則會非常感謝任何幫助。 謝謝

使用列表理解

lst = [['a','1', '2'], ['b', 1, 2], ['c', 1, 2], ['b', 3, 4]]
lst = [x for x in lst if x[0] != 'b']
print(lst)

版畫

[['a', '1', '2'], ['c', 1, 2]]

不使用內置庫,但如果數組很大,可能會更快,

import numpy as np

lst = np.array(lst)
a = lst[np.where(lst[:,0] != 'b')]
a.to_list()

[['a', '1', '2'], ['c', '1', '2']]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM