下面的句子摘自人教版高中英语必修六第71页:
I told Peter not to be late. I was very angry when he still wasn’t home at midnight.
我觉得句中的 at midnight 用得不妥,应改为 by midnight。因为 at midnight 的意思是“在午夜”,而到 by midnight 的意思是“直到午夜之前”,比较:
…he still wasn’t home at midnight 在午夜还没有回家
…he still wasn’t home by midnight 直到午夜还没有回家
开始我想将 at midnight 改为until midnight(直到午夜),但是考虑到 until 会与前面的 until 构成 not…until…句式(直到……才),会有歧义,所以觉得改为by更好。
在此请教各位专家老师!万分感谢!
每天都在英语答疑网“溜达”,每天都有收获,有些问题我反复学习,每次学习也都有新的收获,真是太感谢各位专家老师,好多问题都想请教各位老师,但想到专家老师可能太忙,所以有时也不太好提太多的问题。但上面这个问题实在是困惑我好久了,所以希望能得到专家老师的指点。
张老师:
关于 by 的用法历来为难题。谈点浅见吧。
▲I told Peter not to be late. I was very angry when he still wasn’t home at midnight.
【试译】我告诉过彼得不要晚回,可是都午夜时分了,他却依然没有归家,这让我大为光火。
我觉得句中的at midnight用得没什么不妥,这里用于说明在一个具体的时间点某人的身处状态。不过改为 by midnight 也没什么问题:
I told Peter not to be late. I was very angrywhen he still wasn’t home by midnight.
【试译】我告诉过彼得不要晚回,可直到午夜时分,他还是依然未归,这让我很是火大。
▲By 的基本意义为:
1. not less than 不迟/晚于, 即有时等于(=at); 有时早于(=before);
2. during the period of time untila particular time 到…时为止。
这里取其第二义项:截止到午夜时分,他还是没有归家。人个人认为实际上,这里的home意为【回家】,即back home,正由于此,其才可以与by连用,因为by通常应与短暂动词连用,偶尔与延续动词连用时,通常应含有某种动作特征(如本句涉及的back之意)或涉及到【事件发展到的某一阶段点】:
By eleven o’clock, Brody was back in his office.
By now, the moon was up.
(以上来自《英语语法大全》p337)
By Friday midday, they will have been working on it for seven days.(来自NCE)
到周五中午,他们在这个工程上就干了7天了。
▲还有一点我的看法与你截然相反,这里我认为还可以用 until 来替换 at / by,因为你所担心的事情并不存在。因为只有 Until 与短暂动词连用时,not…until 结构才有【直到…才】之意。
【个人观点,仅供参考】