Python关于类与对象出现报错问题

问题遇到的现象和发生背景

Python:创建Tv类,并且存储name,width属性
在类中添加buy方法,在控制台显示
通过Tv类创建tv对象
调用buy方法

用代码块功能插入代码,请勿粘贴截图
class Tv():
                  def __init__(self,name,width):
                        self.name=name
                        self.width=name
                  def buy(self):
                        print('买'+self.width+'的'+self.name)
                  tv=[Tv('长虹电视','薄款')]
       Tv.buy()

运行结果及报错内容
Traceback (most recent call last):
  File "D:\work1.py", line 6, in 
    class Tv():
  File "D:\work1.py", line 12, in Tv
    tv=[Tv('长虹电视','薄款')]
NameError: name 'Tv' is not defined
我的解答思路和尝试过的方法

在上面代码中

我想要达到的结果

在控制台输出:买薄款的长虹电视


class Tv:
    def __init__(self,name,width):
        self.name=name
        self.width=width
    def buy(self):
        print('买'+self.width+'的'+self.name)
tv=Tv('长虹电视','薄款')
tv.buy()

class Tv:
    def __init__(self,name,width):
        self.name=name
        self.width=width
    def buy(self):
        print('买'+self.width+'的'+self.name)
tv=[Tv('长虹电视','薄款')]
tv[0].buy()