Как мне написать о функциях Python, которые можно добавлять к строкам (или другим объектам)?
, например:
"FOO".lower()
Как они получают ввод?Они генераторы?
Я с радостью прочитаю об этом, но я действительно не знаю, что я ищу.
Строки являются объектами и поэтому имеют методы.lower() является одним из них.
lower()
Вы не можете добавить пользовательский метод к str, unicode или любым другим встроенным (написанным на C) классам - см. Реализация пользовательского строкового метода и Расширение встроенных классов в Python
str
unicode
Они не генераторы.Это просто методы , определенные в классе string.
string
Вы можете создать свой собственный, как это:
>>> class MyString(str): ... def reversed(self): ... return self[::-1] ... >>> x = MyString('spam and eggs') >>> x.reversed() 'sgge dna maps'