if not和but for的用法比较.

问题描述:

if not和but for的用法比较.
这两个用法是相同还是不同的?在虚拟语气中.

表面看起来if not和but for似乎在意思上差不多,但是在词性和用法上却有很大的区别.
一、词性:
* if not
1.副词短语,意思是“不然的话,否则” ,如:
We should do it with all our heart.If not we will leave it unfinished.
我们应该全心全意地做这件事,不然的话,我们将会半途而废.
2.连词,引导否定的条件状语从句,如:
If we are not healthy,happiness is impossible.
没有健康就我们就不可能有幸福.
* but for 否定复合介词,用在名词前构成介词短语,意思是“要不是”,等于 without.还可以扩展成 if ...not / unless 从句(见下).
二、用法:
* 连词 if not 用于条件句可以用真实语气,也可以用虚拟语气,如:
1.真实语气:
If he does not study hard,he will never pass the examination.
他如果不努力学习,(将来)考试就永远不会及格.
This baby seldom cries if he is not tired.
这个婴儿除非在疲倦时(往往)很少哭.
If I do not understand what he says,I always ask him.
要是(平时)我不明白他所说的,我总是问他.
2.虚拟语气:
How could I find you here if you were not at home?
要是你不在家,我怎么会在这里找到你呢?(对现在虚拟).
If he had not told me the truth about her,I would not have uderstood what she had said.
他假如没有告诉过我她的真相,我就不会明白他所说过的话.(对过去虚拟)
* 但是,句子中只要有 but for,该句子必须用虚拟语气.
But for your help (if you had not helped us)we should not have finished in time.
要不是你的帮助,我们就不会及时完成.
But for the rain (= If it had not rained) we should have had a pleasant journey.
要不是下雨,我们就会有一个愉快的旅途的.