сопоставить список функций со списком параметров в Python - PullRequest
0 голосов
/ 18 октября 2018

У меня есть список различных полиномов, созданных с помощью np.poly1d:

 polys = [p1,p2,...,pn]

, и я хочу знать значения, которые принимают эти полиномы для определенных параметров:

 xs = [8.1, 2.3, ..., 4.2] #nvalues

Я хочу получить следующие результаты:

 ys = [p1(8.1), p2(2.3), ..., pn(4.2)] #I want the numeric values.

Ответы [ 3 ]

0 голосов
/ 18 октября 2018

Вы можете просто использовать zip для получения итерируемой пары (function, value), чтобы можно было вызывать function(value).

Демо:

>>> polys = [lambda x: x, lambda x: x**2, lambda x: x**3]
>>> xs = [2, 4, 6]
>>> 
>>> ys = [f(x) for f, x in zip(polys, xs)]
>>> ys
[2, 16, 216]
0 голосов
/ 18 октября 2018
ys = []
for p, val in zip(polys, xs):
    ys.append(p(val))
0 голосов
/ 18 октября 2018
[poly(x) for (poly, x) in zip(polys, xs)]

Я думаю, что вы хотите сделать zip два списка вместе, затем применить функцию из первого списка к значению во втором.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...