They have built the house for 2 years.

They have built the house for 2 years.

谓语动词build是持续性动词,加上2 years持续性时间状语。按通常语法理解:

建造的动作持续了2年。


不能理解为什么语法书上说,上句是错句。查了一些资料,也没看懂明白。


麻烦老师详解,谢谢!

请先 登录 后评论

最佳答案 2019-06-10 19:01

build+宾语为持续性终结动词,不用进行体则意味着动作的结束,状态的改变(一座建筑从无到有)。终结性动作的完成体不能和for持续时间状语连用。如果要表示该动作从过去持续到现在,则必须使用现在完成进行时,即:

They have been building the house for 2 years.

请先 登录 后评论

其它 1 个回答

zbr1016.
in 2 years。“have...done”这种结构可以带两个层级的时间状语(非专业术语)。have可以带一个时间状语表示持续到现在。done也可以有一个时间状语表示这个动作的持续期。楼主这个句子里边因为没有持续到现在,所以不可能是have的状语。build是一个终结性动词,不能用for,不过可以用in。
请先 登录 后评论
  • 3 关注
  • 3 收藏,3265 浏览
  • Pupil07 提出于 2019-06-04 17:27

相似问题