发生异常: typeerror bases must be types
时间: 2023-09-04 19:04:00 浏览: 250
Python的异常概念介绍以及处理
"发生异常: TypeError bases must be types" 这个错误是因为在Python中,当我们在定义一个类时,类的基类必须是类型(type)的对象。也就是说,类的基类不能是其他的对象,而只能是类型对象。
例如,在定义一个类时,我们使用了错误的基类:
```python
class MyClass(object):
pass
class MyAnotherClass(MyClass):
pass
```
在上面的例子中,`MyClass` 是一个非类型对象,所以当我们在定义`MyAnotherClass`时,使用`MyClass`作为基类会导致异常。
要修复这个错误,我们需要将基类`MyClass`改为合适的类型对象,例如`object`:
```python
class MyClass(type):
pass
class MyAnotherClass(MyClass):
pass
```
在上面的例子中,将`MyClass`改为了类型对象`type`,这样`MyAnotherClass`就可以正确地继承`MyClass`了。
总结起来就是,当遇到发生异常"TypeError bases must be types"时,我们需要检查基类是否是类型对象,如果不是,需要将其修改为类型对象才能解决这个问题。
阅读全文