假设你有一个 python 类。我们就这样称呼它C。假设您在脚本中的某个位置或以交互模式创建了它的实例:c=C()
类中是否可以有一个“默认”方法,这样当您引用实例时,就会调用该默认方法?
class C(object):
def __init__(self,x,y):
self.x=x
self.y=y
def method0(self):
return 0
def method1(self):
return 1
def ...
...
def default(self):
return "Nothing to see here, move along"
Run Code Online (Sandbox Code Playgroud)
等等。
现在我以交互模式创建该类的实例,并引用它:
>>> c=C(3,4)
>>> c
<__main__.C object at 0x6ffffe67a50>
>>> print(c)
<__main__.C object at 0x6ffffe67a50>
>>>
Run Code Online (Sandbox Code Playgroud)
如果您单独引用该对象,是否可以有一个被调用的默认方法,如下所示?
>>> c
'Nothing to see here, move along'
>>> print(c)
Nothing to see here, move along
>>>
Run Code Online (Sandbox Code Playgroud) 假设我有两个列表:
>>> y
[False, False, True, False, True, False, False, True, False, True, False, False]
>>> z
[False, True, True, True, True, True, False, False, False, False, False, True]
Run Code Online (Sandbox Code Playgroud)
然后我做以下事情:
>>> y or z
[False, False, True, False, True, False, False, True, False, True, False, False]
>>> z or y
[False, True, True, True, True, True, False, False, False, False, False, True]
Run Code Online (Sandbox Code Playgroud)
不应该正确的答案如下所示?
[False, True, True, True, True, True, False, True, False, True, False, True]
Run Code Online (Sandbox Code Playgroud)
我也得到了错误的答案and:
>>> y …Run Code Online (Sandbox Code Playgroud)