二十年已经过去了 网上翻译是Twenty years have passed.我们学的是Twenty years has passed. 到底哪个对呀

问题描述:

二十年已经过去了 网上翻译是Twenty years have passed.我们学的是Twenty years has passed. 到底哪个对呀
查了好多语法书 都是Twenty years has passed.我彻底晕了 到底哪个对呀?
急!求解

如果20年重在表示一段时间(a period of time),可以看成单数,用has.
但是如果重在表示时间的积累,可以看成复数,用have.
个人理解,大家切磋.