симпатия к списку переменных

#python #sympy

#python #sympy

Вопрос:

Я пытаюсь реализовать функцию cos списка с переменными с помощью sympy. Вот простой пример:

     from sympy import *
    x = Symbol('x')
    cos([x 1,x 2,x 3])
 

Но тогда ошибка

 AttributeError: 'list' object has no attribute 'is_Number' 
 

происходит, а не то, что я ожидал array([cos([x 1]),cos([x 2]),cos([x 3])]) .
Есть ли простой способ использовать cos как numpy.cos() ?

Ответ №1:

Используйте встроенную функцию Python map для применения sympy.cos к каждому элементу в списке:

 import sympy as sy
x = sy.Symbol('x')
print(list(map(sy.cos, [x 1,x 2,x 3])))
 

выдает

 [cos(x   1), cos(x   2), cos(x   3)]