

1+2*x-3*cos(x)  
1番目 1  
2番目 +2*x  
3番目 -3*cos(x)  
標準関数を見つける事ができませんでした。  
正規表現の方法になりますか。よろしくお願いいたします。


CC BY-SA 3.0
2018-01-16T12:56:19.193
41015
2018-01-16T18:41:59.423
2018-01-16T18:29:21.527
7837
17199
question
python sympy
sympyで式をプラスとマイナスで分解する方法を教えて下さい。


SymPyが項の順番を正規化(?)してしまうので、目的にあうかわかりませんが、こんな感じでいかがでしょうか。

[code]

    from sympy import cos
    from sympy.abc import x, y
    
    y = 1 + 2 * x - 3 * cos(x)
    print(y)
    print(y.args)
    
[/code]

結果

[code]

    2*x - 3*cos(x) + 1
    (1, -3*cos(x), 2*x)
    
[/code]

別解として`y.as_terms()`で項を得ることもできます。


CC BY-SA 3.0
2018-01-16T18:28:59.017
41020
2018-01-16T18:41:59.423
2018-01-16T18:41:59.423
7837
7837
41015
answer