[英]While loop doesn't end for values of count > no_of_messages in Python
我有這個代碼片段,該片段經過sqs的退回隊列,打印有關消息的詳細信息,刪除消息。 no_of_messages
是我要查看和刪除的sqs隊列中的消息數。 代碼如下:
rs = que.get_messages(max_messages_in_que)
count=0
if len(rs)!= 0:
while count <= no_of_messages:
for i in range(len(rs)):
count+=1
message = json.loads(rs[i].get_body())['Message']
bounce_message=(json.loads(message))
print(bounce_message['mail']['timestamp'] + ' - ' + bounce_message['mail']['destination'][0])
conn.delete_message(que,rs[i])
time.sleep(1)
rs = que.get_messages(max_messages_in_que)
顯然,這應該在count
大於no_of_messages
時結束。 但事實並非如此。 怎么了?
我沒有猜測的定義,但是您是否將no_of_messages
定義為字符串? 整數始終是<字符串,無論它是什么值。
嘗試
while count <= int(no_of_messages):
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.