假设我有一个Python列表lst
。我想把它转换成一个函数或可调用的,这可以通过以下方式完成:
def lst_as_function(idx):
return lst[idx]
或(不太优选(:
lst_as_lambda_function = lambda idx: lst[idx]
然而,由于这似乎是一种非常自然的操作,我想知道是否存在一种内置的(也许更有效的(方法来实现这一点。
(更准确地说:有没有Python内置的函数convert
可以让我写lst_as_function = convert(lst)
?(
有人知道吗?
实际上有(如果我正确理解你的问题(:
>>> a = [10, 20, 30, 40, 50]
>>> f = a.__getitem__
>>> f(2)
30