我想指出一个什么都不做的函数:
def identity(*args) return args
我的用例是这样的
try: gettext.find(...) ... _ = gettext.gettext else: _ = identity
当然,我可以使用identity上面定义的方法,但是内置方法肯定会运行得更快(并避免我自己引入的错误)。
identity
显然,map与filter使用None的身份,但这是具体到它们的实现。
map
filter
None
>>> _=None >>> _("hello") Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'NoneType' object is not callable
进行更多研究后,没有发现任何问题,在1673203版中提出了一项功能,而Raymond Hettinger表示不会:
最好让人们编写自己的琐碎通行证,并考虑签名和时间成本。
因此实际上是一个更好的方法(lambda避免为函数命名):
_ = lambda *args: args
要么
_ = lambda x: x