使用()和不使用括号创建对象实例的区别?使用圆括号创建对象python
假设这是我的简单的类:
class ilist(list):
t1 = "Test1"
t2 = "Test2"
与制作实例来此两个变量:
list1 = ilist()
list2 = ilist
当打印两个实例
>>> list1
[]
>>> list2
<class '__main__.ilist'>
我可以成功访问他们的属性
>>> list1.test1
'Test1'
>>> list2.test1
'Test1'
,它体现在使用的方法列表2错误追加
>>> list1.append("Item1")
>>> list2.append("Item1")
Traceback (most recent call last):
File "<pyshell#64>", line 1, in <module>
list2.append("Item1")
TypeError: descriptor 'append' requires a 'list' object but received a 'str'
是什么,不仅在这个简单的例子有什么区别?
只有其中一个创建实例, – jamylak