我不确定是否可以说清楚,但会尝试。
我在python中有一个元组,如下所示(请参见下面的代码)。在检查过程中,我会维护一个满足特定条件的计数器(我们称其为“n”)和“弹出”项。
现在,当然,当我弹出第一个项目时,所有编号都出错了,我该如何优雅地做我想做的事情,同时只动态删除一个元组的某些项?
for x in tupleX:
n=0
if (condition):
tupleX.pop(n)
n=n+1
最佳答案
如DSM
所述,tuple
是不可变的,但是即使对于列表,更优雅的解决方案是使用filter
:
tupleX = filter(str.isdigit, tupleX)
或者,如果
condition
不是一个函数,请使用一个理解:tupleX = [x for x in tupleX if x > 5]
如果确实需要tupleX作为元组,请使用生成器表达式并将其传递给
tuple
:tupleX = tuple(x for x in tupleX if condition)
关于python - 从python元组中弹出/删除项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21682804/