上篇文章我们已经大致介绍了现在完成时的结构,今天我们来讨论两个常用句式和常用搭配词

How long have you...

在对话中,我们经常用how long have you... 专门用来问对方“你完成......多久了?”,很抽象吧,直接上例子:

时间线索1:Jill is on holiday in Italy. She is there now.

Jill 正在意大利度假,她现在正在那儿。

时间线索2:She arrived in Italy on Monday.

她是星期一到达意大利的。

时间线索3:Today is Thurday.

今天是星期四。

现在完成时常用词组(现在完成时常用词)(1)

而与how long相对应的,我们用for 和 since 来回答:

所以 how long has Jill been in Italy?

Jill 已经在意大利多久了呢?

--Jill has been in Italy for three days.(从星期二~星期四)

Jill已经在意大利三天了。

--Jill has been in Italy since Monday.(从到达当天算起)

Jill 从星期一已经在那了。

由上可以看出,用“for 一段时间”可以表示多久了。

现在完成时常用词组(现在完成时常用词)(2)

用“since 开始的那一天”也可以表示多久了。

现在完成时常用词组(现在完成时常用词)(3)

我们再来看个例子:

目前时间:2020年4月

How long have you bought your car?

--I have bought my car for 5 five years.

我已经买车5年了。

也可以说

--I have bought car since 2015.

我2015年就买车了。

而部分人会把 for 和 ago 混淆,但是,主要记住for与现在完成时搭配,ago与一般过去时搭配即可。

现在完成时常用词组(现在完成时常用词)(4)

还是以Jill的事为例:

When did Jill arrive in Italy?

--She arrived in Italy three days ago.

How long has Jill been in Italy?

--She has been in Italy for three days.

Just & already & yet

在现在完成时里还常见jsut,already,yet的搭配,到底怎么用?什么时候用?

Just=一小段时间之前,时间很短促,刚刚

Is Marco here?

--Yes, he has just arrived. 他刚刚到。

Are you hungry?

--No, we have just had our lunch.我们刚刚吃完午餐。

Is Tom still here?

--No, I'm afraid he has just gone. 他刚刚离开。

现在完成时常用词组(现在完成时常用词)(5)

Already=在某人预料的情况之前已经完成

What time will Jill and Marco come?

--They've already arrived. 他们已经到了(在你的预料情况之前)

Paul, this is Mary.

--Yes, I know. We've already known each other. 我们已经互相认识彼此了。(在你的预料情况之前)

现在完成时常用词组(现在完成时常用词)(6)

Yet=直到现在

用于否定句中:

Is Marco here?

--No, he hasn't arrived yet. 他直到现在还没到。

Does Jill know you're going away?

--No, I haven't told her yet. 我直到现在还没有告诉她。

用于问句中:

Have Jill and Marco arrived yet?

--No yet. We still waiting for them.

Has Crystal started her new job yet?

--No, she will start next week.

,