【发布时间】:2017-08-15 08:51:51
【问题描述】:
我知道,如果您创建自己的对象,则可以在该对象上定义自己的方法。
my_object_instance.mymethod()
我还知道您可以使用 infix 包定义中缀函数。
obj1 |func| obj2
我想要的是能够定义一个接受后缀符号的现有类型的函数。
例如给定一个列表l,我们可能想要检查它是否已排序。定义一个典型的函数可能会给我们
if is_sorted(l): #dosomething
但如果可以写的话可能会更惯用
if l.is_sorted(): #dosomething
如果不创建自定义类型,这可能吗?
【问题讨论】:
-
如果你想要的是一个接受类型作为参数的函数,那么你不需要做任何事情;类型是 python 中的第一类对象
-
后缀表示法是别的东西。
标签: python function postfix-notation