【发布时间】:2012-03-20 10:34:16
【问题描述】:
我将如何编写可以附加到字符串(或其他对象)的 python 函数?
例如:
"FOO".lower()
他们如何接收输入? 他们是发电机吗?
我会很高兴地阅读它,但我真的不知道我在寻找什么。
【问题讨论】:
-
这是一个method
我将如何编写可以附加到字符串(或其他对象)的 python 函数?
例如:
"FOO".lower()
他们如何接收输入? 他们是发电机吗?
我会很高兴地阅读它,但我真的不知道我在寻找什么。
【问题讨论】:
字符串是对象,因此具有方法。 lower() 就是其中之一。
您不能将自定义方法添加到 str、unicode 或任何其他内置(用 C 语言编写)类 - 请参阅 Implementing a custom string method 和 Extending builtin classes in python
【讨论】:
它们不是生成器。它们只是在string 类上定义的methods。
您可以像这样创建自己的:
>>> class MyString(str):
... def reversed(self):
... return self[::-1]
...
>>> x = MyString('spam and eggs')
>>> x.reversed()
'sgge dna maps'
【讨论】: