Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在python中检查数组中是否存在列表元素_Python_Arrays_List - Fatal编程技术网

如何在python中检查数组中是否存在列表元素

如何在python中检查数组中是否存在列表元素,python,arrays,list,Python,Arrays,List,我有一张单子 bulk_order Out[230]: [3 523 Name: order_id, dtype: object] 我有一个数组。这是一个系列,但我用值访问它 clusters_order_ids.values Out[231]: array([['520', '521', '524', '527', '532'], ['528'], ['531'], ['525', '526', '533'], ['519', '523', '529', '534', '53

我有一张单子

bulk_order
Out[230]: 
[3    523
Name: order_id, dtype: object]
我有一个数组。这是一个系列,但我用
值访问它

clusters_order_ids.values
Out[231]: 
array([['520', '521', '524', '527', '532'], ['528'], ['531'],
   ['525', '526', '533'], ['519', '523', '529', '534', '535'], ['530']],     
dtype=object)
现在我想检查上面的数组中是否存在
列表元素523
,如果存在,我想删除它

我正在用python做以下工作

bulk_order in clusters_order_ids.values
但是它给了我
False
输出

试试这个(从):

对于删除,您必须在每个列表中输入,以便:

for sublist in clusters_order_ids.values:
    if bulk_order in sublist:
        sublist.remove(bulk_order)
        if not sublist:
            #do something to remove the empty list
        break;
试试这个(从):

对于删除,您必须在每个列表中输入,以便:

for sublist in clusters_order_ids.values:
    if bulk_order in sublist:
        sublist.remove(bulk_order)
        if not sublist:
            #do something to remove the empty list
        break;

您的列表不是列表,而是列表的列表

如果要删除包含列表['523']中某些内容的整个列表,请执行以下操作:

orders = [['520', '521', '524', '527', '532'], ['528'], ['531'], ['525', '526', '533'], ['519', '523', '529', '534', '535'], ['530']]
remove_order_with_ids = ['523'] # or bulk_order 
orders = [order for order in orders if not set(remove_order_with_ids).intersection(set(order))]
print orders
# [['520', '521', '524', '527', '532'], ['528'], ['531'], ['525', '526', '533'], ['530']]
如果您只想从内部列表中删除['523']中的项目:


您的列表不是列表,而是列表的列表

如果要删除包含列表['523']中某些内容的整个列表,请执行以下操作:

orders = [['520', '521', '524', '527', '532'], ['528'], ['531'], ['525', '526', '533'], ['519', '523', '529', '534', '535'], ['530']]
remove_order_with_ids = ['523'] # or bulk_order 
orders = [order for order in orders if not set(remove_order_with_ids).intersection(set(order))]
print orders
# [['520', '521', '524', '527', '532'], ['528'], ['531'], ['525', '526', '533'], ['530']]
如果您只想从内部列表中删除['523']中的项目:



clusters\u order\u id.values
是列表列表,而不是数字。使用any()检查元素是否存在
any(集群中的id\u列表的id\u列表中的批量\u顺序\u id)
您的数组是numpy数组还是其他什么?
clusters\u顺序\u id。值
是列表列表,而不是数字。使用any()检查元素是否存在
any(集群中的id\u列表的id\u列表的批量\u顺序\u id)
您的数组是numpy数组还是其他数组?使用any()检查元素是否存在
any(集群中id\u列表的id\u列表中的批量顺序\u id)
@tglaria它以
False
@user2927983的形式将输出为
False
?使用any()检查元素是否存在
any(集群id\u-order\u-id的id\u-list中的bulk\u-order\u-id)
@tglaria它将输出为
False
@user2927983什么将输出为
False
?它也不会删除。无论是包含
523
还是
523
的整个列表都不适用于
remove\u order\u with_id='523'
但不适用于
remove\u order\u with_id=bulk\u order
是否需要从批量订单中访问订单id:remove\u order\u with_id=bulk\u order.order\u id?bulk\u order是一个列表。批量订单是一个订单id列表,是否也包含数字3?在这种情况下,如果数组包含3,会发生什么?它也不会删除。无论是包含
523
还是
523
的整个列表都不适用于
remove\u order\u with_id='523'
但不适用于
remove\u order\u with_id=bulk\u order
是否需要从批量订单中访问订单id:remove\u order\u with_id=bulk\u order.order\u id?bulk\u order是一个列表。批量订单是一个订单id列表,是否也包含数字3?在这种情况下,如果数组包含3,会发生什么?