0

This question already has an answer here:

In our country we don't have present perfect form, so it is difficult for us to understand 'present perfect' exactly.

ex) It has rained for two hours.

In this sentence Is it raining now? or It stopped raining now?

marked as duplicate by Damkerng T., ʇolɐǝz ǝɥʇ qoq, Tyler James Young, jimsug, Helix Quar Jul 31 '14 at 4:55

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • Without context it's impossible to say. For example: "Is it me or has it just been sputtering all week without any significant rainfall?" "It has rained for two hours." "When?!" "On Tuesday." – Jim Jul 31 '14 at 3:58
1

"It has rained for two hours."

Is it raining now? [Or has it stopped] raining now?

In short, the sentence means that it is still raining now.

The Continuing Present Perfect Tense

Regarding your example, "[w]e use has or have with a past participle to describe an action that started in the past and is (or may be) still going on." (Read more here)

More importantly, if we also have "the presence of a time adjunct, such as a "since" or "for" phrase", we likely can assume that the situation is still happening. (Read more here).

So, to sum up, the form "has/have" + past participle (verb) + "for"/"since" commonly indicates an action is continuing.

Example 1 - Using the Past-Participle of the Main Verb (Rain/ed)

Q: "How long has it been raining?"

A: "It has rained for two hours [and will likely continue to do so in the future]."

Note that "the past participle form of a regular verb is identical to the past form: it always ends in -ed", but that irregular verb past tense forms and irregular verb past participles forms are generally different e.g.

  • "take" (verb)
  • "taken" (past participle)
  • "took" (past tense).

Using the Past Participle of Be (Been)

Sometimes, rather than using the past-participle/past tense of the main verb, you can/will use the past-participle of be (been) instead to signal an action or situation is continuing.

The form for this is "has or have + been (the past participle of BE) + the - ing form of the main verb." (Read more here). Note that this form almost always takes "for" or "since" to help indicate the action is still going on.

Example 2 - Using the Past-Participle of "Be" (Be/Been)

Q: "How long has it been raining?"

A1: "It has been raining for two hours [and I don't expect it to stop soon]."

A2: "It has been raining since two o'clock [and I don't expect it to stop soon]."

The biggest differences between the sentences in Example 1 and Example 2 is that Example 2 is clearer about showing things are still taking place. Both use "for"/"since" to help indicate the situation is still occurring.

Exceptions

As previously stated, remember that "for" or "since" is very important and often helps determine if the action is still going on. It seems likely this might cause confusion.

Example 3 - Non-Continuous vs. Continuous Perfect Present Tense

  • [Non-Continuous Present Perfect]

    "He has taken his medicine."

    It is likely he has done this very recently (continuing up to the present) but he is not taking his medicine any more for the moment.

  • [Continuous Present Perfect]

    "He has taken his medicine for the last three hours."

    He has done this in the past (up to the present) and is almost certainly still doing this (likely into the future).

Likewise, there may be other sentence forms that use "it has ----ed for two hours" but since they have other parts (e.g. "It has rained for two hours, so the roads are slippery"), you will have to use more information to determine if it is still raining (e.g. ask "Is it still raining?").

1

If it is still raining, you would say:

It has been raining for two hours.

If it has stopped raining, you would say:

It had rained for two hours.

because it is completely in the past.

If you say:

It has rained for two hours.

its unclear if its still raining or not.

Not the answer you're looking for? Browse other questions tagged or ask your own question.