0

私が理解していることから、文字列をisと と比較できます==。これらの機能を部分的に適用する方法はありますか?

例えば:

xs = ["hello", "world"]
functools.filter(functools.partial(is, "hello"), xs)

私に与えます:

functools.filter(functools.partial(is, "hello"), xs)
                                    ^
SyntaxError: invalid syntax
4

2 に答える 2

4

使用できますoperator.eq

import operator
import functools
xs = ["hello", "world"]
functools.filter(functools.partial(operator.eq, "hello"), xs)

収量

['hello']

operator.eq(a, b)と同等a == bです。

于 2015-05-01T11:54:52.757 に答える
2

ここでパーシャルを使用する理由がわかりません。たとえば、ラムダを使用して、関数として直接記述する方がはるかに簡単です。

functools.filter(lambda x: x == 'hello', xs)
于 2015-05-01T11:54:06.207 に答える