书上说:but for 一定要与虚拟语气连用,但这种说法是不是太绝对。如下面这个句子:
The sale was supposed to last for a week, but for all practical purposes it’s over.
它就是不虚拟语气啊!
你的疑虑是有道理的。
but for 是否连用虚拟语气,其实与它的意思有关。
假若but for表示if it were [was] not for或if it had not been for这样的意思(即表示“若不是”“要不是”),它一定要与虚拟语气连用。如:
But for the safety-belt I wouldn’t be alive today. 假若没有安全带, 我就活不到今天了。
I would have been in real trouble but for your help. 要不是有你帮忙,那我可就倒大霉了。
But for the rain we would have had a nice holiday. 要不是因为下雨, 我们的假日一定过得很惬意。
如果but for不是表示if it were [was] not for或if it had not been for这样的意思,而but只是一个普通的转折连词,其后的for也只是一个普通的介词,此时显然不必与虚拟语气连用。如:
I’m not afraid for me, but for the baby. 我不是为我担心,而是为宝宝担心。
We don’t usually accept checks, but for you we’ll make an exception. 我们通常不接受支票,但对你我们可以破例。
You’ll have your own office soon but for the time being you’ll have to share one. 你很快就有自己的办公室了,不过暂时还得和别人合用一间。