関数twentyとクラスTwentyを分けてみただけです。普通に考えれば、インスタンを作っているところがないので、エラーになると思ったんですが、全く問題なく動きました。class Twenty(object)とobjectとあるのが、仕掛けに思えます。つまりインスタンスが1個作られる。と思うしか無いですね。
一般的には、上のようだと思います。aTWentyとwを打ち間違いで、少し悩みました。上のクラスTwentyで数値を入力していき、0が入力されれば終了の場面では使えますね。whileを使えば、楽に行けるのは間違いないと思います。