変数が定義されてるかどうか調べるのに、

if not '__host' in dir(self)

とかやってる私は変ですかね。