如果小于x,则弹出值

Dyl*_*nsq 1 python arrays

我有这一系列的词典

for row in array:
        if row['val'] < 11:
            array.pop(array.index(row))
Run Code Online (Sandbox Code Playgroud)

我试图从数组中删除字典,如果其中一个值低于某个阈值.它可以工作,但仅适用于数组中的一个项目

我现在的解决方案是运行两次for语句,然后删除额外的值.我该怎么办呢?

jas*_*son 8

不应该修改您正在迭代的集合.相反,使用列表理解:

array = [row for row in array if row['val'] >= 11]
Run Code Online (Sandbox Code Playgroud)

另外,让我们清楚另一件事.Python 没有本机数组.它有清单.