Python如何在3次尝试后结束无限循环
我有下面的循环,它是一个无限循环。只要请求代码不相等=Python如何在3次尝试后结束无限循环,python,python-2.7,Python,Python 2.7,我有下面的循环,它是一个无限循环。只要请求代码不相等=200,并且每次尝试发送电子邮件时,它就会循环 我需要在3次尝试后结束循环,然后发送一次电子邮件并退出循环 有什么建议吗 while True: r = requests.get("http://www.website.com/test11") if r.status_code == 200: break else: sendemail(from_addr, to_addr_list,
200
,并且每次尝试发送电子邮件时,它就会循环
我需要在3次尝试后结束循环,然后发送一次电子邮件并退出循环
有什么建议吗
while True:
r = requests.get("http://www.website.com/test11")
if r.status_code == 200:
break
else:
sendemail(from_addr, to_addr_list, cc_addr_list,subject, message,login, password)
如果您想发送电子邮件,无论发生什么情况,您都可以使用:
count=0
while count < 3:
r = requests.get("http://www.website.com/test11")
if r.status_code == 200
break
count+=1
sendemail(from_addr, to_addr_list, cc_addr_list,subject, message,login, password)
count=0
success = False
while count < 3:
r = requests.get("http://www.website.com/test11")
if r.status_code == 200
success = True
break
count+=1
if(not success)
sendemail(from_addr, to_addr_list, cc_addr_list,subject, message,login, password)
count=0
当计数小于3时:
r=请求。获取(“http://www.website.com/test11")
如果r.status_code==200
打破
计数+=1
发送电子邮件(发件人、收件人列表、抄送地址列表、主题、消息、登录名、密码)
如果您只想在失败的情况下发送电子邮件,请使用以下选项:
count=0
while count < 3:
r = requests.get("http://www.website.com/test11")
if r.status_code == 200
break
count+=1
sendemail(from_addr, to_addr_list, cc_addr_list,subject, message,login, password)
count=0
success = False
while count < 3:
r = requests.get("http://www.website.com/test11")
if r.status_code == 200
success = True
break
count+=1
if(not success)
sendemail(from_addr, to_addr_list, cc_addr_list,subject, message,login, password)
count=0
成功=错误
当计数小于3时:
r=请求。获取(“http://www.website.com/test11")
如果r.status_code==200
成功=正确
打破
计数+=1
如果(不成功)
发送电子邮件(发件人、收件人列表、抄送地址列表、主题、消息、登录名、密码)
Python在循环上有一个稍微晦涩的else:
子句,这在这里很方便-当且仅当循环以运行到完成结束结束时才运行(即,如果您点击了中断
),它将被跳过)。看起来是这样的:
for _ in range(3):
r = requests.get("http://www.website.com/test11")
if r.status_code == 200:
break
else:
sendemail(from_addr, to_addr_list, cc_addr_list,subject, message,login, password)
我们可以在每个请求之间添加睡眠计时器吗?