![](/img/trans.png)
[英]Python - how to randomly remove an item from the list until list is empty using both a while-loop and for-loop
[英]Python - While-Loop until list is empty
我正在使用Django,我有一个已转换为列表的对象的查询集( unpaid_sales
)。 我正在执行一个遍历此列表并对每个项目进行操作的进程,直到列表为空或给定的整数( bucket
)达到零。
我就是这样设置的:
while unpaid_sales:
while bucket > 0:
unpaid_sale = unpaid_sales.pop(0)
...do stuff
在某些情况下,我收到以下错误:
从空列表中弹出
我的逻辑出了什么问题?
不要使用单独的while
循环。 做如下:
while unpaid_sales and bucket > 0 :
unpaid_sale = unpaid_sales.pop(0)
...do stuff
您的最终标准必须略有不同:循环同时有项目且bucket
是积极的。 or
这不是正确的操作。
while unpaid_sales and bucket > 0
unpaid_sale = unpaid_sales.pop(0)
#do stuff
你应该做一个循环: while bucket>0 and unpaid_sales
。 在这里,您在bucket
循环中弹出元素,然后只是检查该bucket
是否为正,但是您没有检查element_sales
仍然包含元素。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.