直接對下方代碼進行解析
for a in range(5): print(a) if a == 2: break
依次讀取range內的數字,並答應出來。當讀取出來的數字是2時,結束循環,執行后入下圖。可以看到,打印輸出到2,循環就停止了
以上主要用於解決請求過程中通過判斷響應碼來決定下一步操作,代碼如下
import requests def url(time=3):# 超時時間設置為3秒 r = requests.get("http://www.baidu.com",timeout=time) c = r.status_code#返回請求后響應碼 return c try: c = url() print("首次請求成功")#如果請求在3秒內響應成功,則執行try內容並輸出“首次請求成功” except Exception as e:#url函數請求異常,即拋出錯誤(即在3秒內未完成請求,拋出timeout錯誤),則執行“except” for i in range(2):#為防止因網絡不穩定導致響應時間超時,使用循環多次請求,循環次數不宜過多,有時候是因為服務器已經封掉ip,請求已經沒用 c = url(time=3) if c == 200:#判斷,如果有任意一次響應為200,則break結束循環 break print("再次請求成功")
當響應在3秒內完成,輸出首次請求成功
超過3秒拋出超時錯誤,執行except 內的內容,再次請求,且循環多次,避免是因網絡不穩定導致超時
然后if判斷返回碼如果是200,這中止循環,輸出再次請求成功,否則繼續請求