by、by the time和by the end of這組結構都表示「到...時候為止」,其主句謂語動詞一般都要採用完成時。
需要注意的是,這些結構後面所接的時間不同,主句謂語動詞就要採用不同的完成時態。
後接將來時間
這時,主句謂語動詞一般要採用將來完成時或將來完成進行時。如:
He will have read ten books by next Friday. 到下周五為止他將讀完十本書。
She will have been learning English for ten years by the end of this term. 到這個學期末她將學了十年英語。
They will have already left by the time she comes. 她來時他們已經走了。
後接過去時間
這時,主句謂語動詞一般要採用過去完成時。如:
They had learned English for ten years by last Saturday. 到上周六為止他們已經學了十年英語。
The students had already left the party by the time she arrived. 她到達時學生已經離開了聚會。
We had worked on the bridge for two years by the end of last month. 到上個月末為止我們已經在橋上工作兩年了。