所以有一个字符串,让我们说a =' abc'和该字符串对象的两个内置字符串方法(以及一般的字符串类):
len(a)
a.capitalize()
那么,第一个语法method(object)
何时使用,object.method()
?
非常感谢
答案 0 :(得分:3)
第一个功能是内置的功能,它与任何类都没有关联。您可以使用dir(__builtins__)
:
>>> dir(__builtins__)
'ArithmeticError', 'AssertionError', ... 'len', ... 'vars', 'zip']
len()
旨在返回任何可迭代的大小,而不仅仅是字符串。
第二个函数实际上是内置类str
的方法。您可以使用str
仔细阅读dir(str)
的方法,并确认capitalize
是str
的实例方法。
>>> 'capitalize' in dir(str)
True
在对象的实例上调用实例方法,例如'abc'.capitalize()
。这意味着调用将abc
作为capitalize
的不可见参数传递。方法仅适用于该类类型的实例。