2017-02-13 2 views
-2

Ich muss sicherstellen, dass f, a, c und p positive Zahlen sind, so dass der Ausgang nur positiv ist.Weisen Sie der Variablen einen positiven Wert zu

import sympy 

f,c,a,p,v = sympy.symbols('f c a p v') 
expr = p*a*c*v**2 - 2*f 

print(sympy.solve(expr, 'v')) 
+1

Verwenden Sie Magie von 'if'! – Arman

+1

Sie sind keine Zahlen, positiv oder negativ; Sie sind Symbole. Das Ergebnis von "lösen" ist einfach ein Ausdruck, der für "v" gelöst ist. – chepner

+0

Check it out: http://stackoverflow.com/questions/7122535/python-ensuring-a-variable-holds-a-positive-number – TheInvisibleMan

Antwort

0

Versuchen Pythons mit map() eine Funktion (abs() in unserem Fall) auf alle Variablen in einem iterable anwenden:

f, c, a, p,v = list(map(abs, sympy.symbols('f c a p v'))) 
0

versehen Variable seinen Absolutwert gleichsetzen empfindlich sein könnte.

Verwandte Themen