[英]plus/minus operator for python ±
我正在尋找一種在 python 2 或 3 中進行加/減運算的方法。我不知道命令或運算符,也找不到執行此操作的命令或運算符。
我錯過了什么嗎?
如果您要打印 ± 符號,只需使用:
print(u"\u00B1")
另一種可能性:不確定性是一個用於進行容錯計算的模塊,即
(2.1 +/- 0.05) + (0.6 +/- 0.05) # => (2.7 +/- 0.1)
這將被寫為
from uncertainties import ufloat
ufloat(2.1, 0.05) + ufloat(0.6, 0.05)
編輯:我得到了一些奇怪的結果,經過更多的嘗試,我找到了原因:指定的錯誤不是容差(工程藍圖中的硬附加限制),而是標准偏差值 - 這就是上述原因計算結果為
ufloat(2.7, 0.07071) # not 0.1 as I expected!
如果您碰巧使用 matplotlib,您可以打印類似於使用 Latex 的數學表達式。 對於 +/- 符號,您將使用:
print( r"value $\pm$ error" )
其中 r 將字符串轉換為原始格式,而 $-signs 圍繞字符串中的數學方程部分。 這部分中的任何單詞都將使用不同的字體,並且除非用正確的代碼明確指出,否則它們之間不會有空格。 這可以在matplotlib 文檔的相關頁面上找到。
對不起,如果這太小眾了,但我偶然發現了這個問題,試圖找到這個答案。
而不是像這樣計算表達式
s1 = sqrt((125 + 10 * sqrt(19)) / 366)
s2 = sqrt((125 - 10 * sqrt(19)) / 366)
你可以用
import numpy as np
pm = np.array([+1, -1])
s1, s2 = sqrt((125 + pm * 10 * sqrt(19)) / 366)
SymPy 中還沒有這樣的對象(如您所見,有一個問題表明https://github.com/sympy/sympy/issues/5305 )。 不過,模仿起來並不難。 只需創建一個符號,並在最后分別用 +1 和 -1 交換它。 喜歡
pm = Symbol(u'±') # The u is not needed in Python 3. I used ± just for pretty printing purposes. It has no special meaning.
expr = 1 + pm*x # Or whatever
# Do some stuff
exprpos = expr.subs(pm, 1)
exprneg = expr.subs(pm, -1)
您也可以從一開始就跟蹤兩個方程。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.