我寫了一個簡單的Python(3.2)腳本來下載一系列文件。它完成了工作,但在文件下載開始之前,try塊之前的第一個打印語句不會執行。我希望看到「正在下載1 ...」,然後等待幾分鐘,然後打印出「成功!」。或「失敗!」之後。但是,這一切都在文件下載後同時發生。它仍然以正確的順序打印(即「下載1 ...成功!」),但我不能爲了我的生活找出爲什麼它掛起。聲明之前嘗試阻止等待,直到嘗試執行
from urllib import request
for i in range(1,35):
url = "http://example.com/" + str(i) + ".mp4"
print("Downloading " + str(i) + "...", end='') #this doesn't happen until after the try
try:
resp = request.urlopen(url)
local = open(str(i) + '.mp4', 'wb')
local.write(resp.read())
local.close()
print("SUCCESS!")
except:
print("FAILURE!")
謝謝,這解釋了一切。 – jimbotron