考慮同樣的循環結構,這兩個變種:循環結構最好的辦法
x = find_number_of_iterations()
for n in range(x):
# do something in loop
和:
for n in range(find_number_of_iterations()):
# do something
將在第二循環評估每個後續循環運行的方法find_number_of_iterations
,還是會方法find_number_of_iterations
即使在第二個變體中也只能評估一次?
你可以很容易地這個測試自己,而是:無論是方式,該功能只被調用一次。 – jonrsharpe
我該如何測試這個。我的導師批評我的代碼在第二個變體中,因爲他說它會在每個循環運行中評估 – oat
然後,你會告訴你的導師他們錯了!你可以通過傳遞一個函數來測試它,該函數記錄被調用的次數爲find_number_of_iterations,然後檢查是否爲1。 – jonrsharpe