同学们学到八年级,最大的语法困惑之一就是:一般过去时和现在完成时都能翻译成「……了」,那到底该用哪一个?这篇文章把两个时态的分工讲清楚,并给出一套判断方法。
一、本质区别:一个「断开」,一个「连着现在」 一般过去时表示过去某个时间发生的动作或存在的状态,与现在没有关系。句中通常有明确的过去时间状语。 现在完成时表示过去发生的动作对现在造成的影响或产生的结果,或者动作从过去一直持续到现在。它的核心是「与现在有关联」。
对比体会: I lost my key yesterday.(昨天丢的,只讲过去这件事) I have lost my key.(钥匙现在还没找到,所以进不了门——对现在有影响) 中文翻译可能都是「我丢了钥匙」,但英语里意思完全不同。
二、时间标志词速查表 一般过去时常用:yesterday, last week/month/year, in 2020, two days ago, just now, then, at that time, once upon a time。 现在完成时常用:already, yet, just, ever, never, before, twice/three times, since 2022, for three years, so far, up to now, in the past few years, recently。 特别注意:如果句子中有 yesterday、last year、ago 等明确的过去时间, 一定要用一般过去时,绝不能用现在完成时。这是中考最容易设的陷阱。
三、现在完成时的两种用法 用法一(已完成):动作在过去完成,但对现在有影响。 I have just finished my homework, so I can watch TV now. 用法二(持续):动作从过去持续到现在,常与 since/for 连用。 He has lived in Guiyang for ten years. / He has lived in Guiyang since 2016. 注意:这里的动词必须是延续性动词。像 come, go, buy, borrow, die, join 这些瞬间动词不能与 for/since 连用,需要转换: come → be here / be in, go → be away, buy → have, borrow → keep, die → be dead, join → be in / be a member of。 错句:He has come here for three days. 正确:He has been here for three days.
四、have been to 与 have gone to have been to 表示「去过(现在已回来)」;have gone to 表示「去了(现在不在这里)」。 My father has been to Beijing twice.(去过两次,人在) My father has gone to Beijing.(去了北京,人不在这儿)
五、典型例题 【例1】用括号内动词的适当形式填空。 (1) I __ (see) the film twice. It's really wonderful. (2) We _ (visit) the Science Museum last Friday. (3) — you ever (be) to Shanghai? — Yes. I (go) there in 2019. (4) My uncle ___ (work) in that hospital since he graduated. 【解析】 (1) twice 是现在完成时的标志词,填 have seen。 (2) last Friday 是明确的过去时间,填 visited。 (3) ever 用在现在完成时疑问句,填 Have ... been;in 2019 是过去时间,填 went。这里正好体现两个时态同现的典型考法。 (4) since + 时间点,用现在完成时,填 has worked。
【例2】改错。 (1) I have finished my homework an hour ago. (2) She has joined the music club for two years. 【解析】 (1) an hour ago 是过去时间状语,与现在完成时冲突,改为 I finished my homework an hour ago. (2) join 是瞬间动词,不能与 for 连用,改为 She has been in the music club for two years. 或 She joined the music club two years ago.
六、三步判断法 第一步:找时间状语。出现 yesterday、last…、ago、in 2020 一律用一般过去时。 第二步:看是否「影响现在」或「持续到现在」。若是,用现在完成时。 第三步:检查动词。若是瞬间动词又需要表持续,先做动词转换。
七、练习 基础题:选择填空。 (1) My sister __ her homework already. (A. finishes B. finished C. has finished D. is finishing) (2) They _ to the Great Wall three years ago. (A. have been B. went C. have gone D. go) (3) — Where is Tom? — He the library. (A. has been to B. has gone to C. went to D. goes to) 提高题:用所给动词的适当形式完成短文。 Li Wei is my best friend. We (know) each other since primary school. Last summer, we (take) a trip to Qiandongnan together. I (never / see) such beautiful villages before. Since then, we ___ (plan) another trip. 挑战题:以 My Changes 为题,写一段 80 词左右的短文,要求至少使用 2 处一般过去时和 2 处现在完成时。
【参考答案】 基础题:(1) C (2) B (3) B 提高题:have known;took;have never seen;have planned 挑战题(范文): I have changed a lot in the past two years. In Grade Seven, I was short and shy. I was afraid to answer questions in class. But everything has changed since I joined the English club. I have made many new friends and my English has improved a lot. Last term, I even won the first prize in the school speech contest. I believe I will keep changing and become better and better.
八、课后作业 基础:整理两个时态的标志词,各写五个句子。 提高:把上面短文中的时态全部标注出来,说明使用理由。 挑战:总结「瞬间动词转延续性动词」的六组转换,并各造一个现在完成时的句子。
记住一句话:有明确过去时间就用过去时,和现在有关就用完成时。做题先找时间状语,正确率会立刻提升。