object
除了以下类之外,关键字是否有任何用途:
class HelloWorld(object):
pass
因为当为它分配一个变量时,object
它似乎没有用(没有variable.__dict__
或任何东西)。
例如:
x=object()
x.anything="foo"#<----- throws an error
object
除了以下类之外,关键字是否有任何用途:
class HelloWorld(object):
pass
因为当为它分配一个变量时,object
它似乎没有用(没有variable.__dict__
或任何东西)。
例如:
x=object()
x.anything="foo"#<----- throws an error
一种可能的用途是用于标记值 - 您希望具有不会被意外复制的唯一值的东西。例如:
NOT_SET = object()
def some_function(arg=NOT_SET):
if arg is NOT_SET:
# the user didn't pass in a value for 'arg'
else:
# the user passed in a value for 'arg'
因为每个对象实例都有一个唯一的标识,所以if
只有当用户没有传入一个值时,语句的条件才会为真(与参数的常见默认值不同,None
用户可能会将其传递给某些函数)。