ついでなんで…

他の解をば…

def FizzBuzz(a):
    fl = 0
    str = ""
    if ( a % 3 ) == 0:
        str += "Fizz"
        fl = 1
    if ( a % 5 ) == 0:
        str += "Buzz"
        fl = 1
    if (fl == 0):
        str = a
    return str
#
for a in range(1,101):
    print FizzBuzz(a),

処理部を関数化

class FizzBuzz:
    def __init__(self):
        self.resetfl()
        self.str = []
    def setfl(self):
        self.fl = 1
    def resetfl(self):
        self.fl = 0
    def getresult(self):
        for a in range(1,101):
            rst = ""
            if ( a % 3 ) == 0:
                rst += "Fizz"
                self.setfl()
            if ( a % 5 ) == 0:
                rst += "Buzz"
                self.setfl()
            if (self.fl == 0):
                self.str.append(a)
            else:
                self.str.append(rst)
                self.resetfl()
        return self.str
#
x = FizzBuzz()
print x.getresult(),

めっさ、無駄なクラス化

と、いう所かな…。
でも、クラス化まで行くと、本当に無駄なコードだなぁ…あ、一部継承が入ってるんで、初心者向けでは有るかw、あははははは…orz