2012-07-02 10 views
6

実数のある区間を操作する必要があります。基本的には、私は組合とその交差を実行します。このようにして、私は常に有限個の区間の和集合である実数の集合を得る。sympyセット:一定間隔で繰り返します。

現時点では私はpythonのためにsympyを使用しています。私の質問です:与えられたsympyセット、その間隔で反復する(素敵な)方法はありますか?

(-oo, 5] U [7, 20] 

し、それを解凍するために正規表現を使用します。

一つの可能​​性は次のようになりますセット、ののrepr文字列を使用することです。

これを行うにはより良い、より多くのPythonの方法がありますか?

答えて

7

私は自分自身に答えます。クラスUnionの属性argsを使う必要がありました。これは、その組合が考慮されている集合のタプルを与える:

>>> union 
[2.0, 10.0) U [20.0, 30.0) U {1.0, 15.0, 17.0, 40.0} 
>>> union.args 
([2.0, 10.0), [20.0, 30.0), {1.0, 15.0, 17.0, 40.0}) 
+0

答えを正しい答えとしてマークすることができます。 – asmeurer

+0

lui bravo Giacomo! – user22866

関連する問題