have been dong 和have done的区别

来源:百度知道 编辑:UC知道 时间:2024/06/06 15:05:27

have been doing sth是“一直在做某事(从过去到现在,并且还未停止)”;
have done sth是“过去已经做过某事(已经完成,现在不再做了)”
例:
I have been playing this game for weeks.我已经玩这个游戏玩了几周了(现在还在玩)。
I have played this game a couple of weeks ago.我几周前已经玩过这个游戏了(现在不再玩了)。

应该注意的是,这个两个短语后面所接的时间短语的类型也是不同的,这个可能刚刚开始的时候不好区分

have been done 和have done

都是过去完成时

前者表被动,后者表主动。

have been doing 强调的是过程

have done 强调的是状态

比如说:He has been teaching.
He has taught .

这两句翻译起来 是不一样的。

前句是:他一直在教书。
后句得说成:他教书了。