2012-05-12 26 views
3

我想在SymPy中定義一個常量,它具有與pi,e和i等常量相同的功能。當給出確切的答案時,它們仍然是它們的符號,而不是評估它們的值。例如,如果我跑在SymPy中定義包含數值的符號

2*pi 

它會返回2⋅π。如果我想要一個近似的答案,我可以運行

N(2*pi) 

返回6.28318530717959。

我要的是定義一個常數,tau蛋白,其中

tau 

回報τ,而

N(tau) 

回報6.28318530717959。

基本上我只是試圖定義一個等於2⋅π的新符號τ。

回答

4

您需要按Pi這樣做子類NumberSymbol。只需複製粘貼源代碼Pi並添加*2就足夠了。請注意,這些對象是單例類而不是實例。您還應該閱讀pi宣言;)