在 SymPy 中将 ** 替换为 Math.pow

Replace ** with Math.pow in SymPy

我在 Python 中有一个 SymPy 表达式,我想将其复制并粘贴到 Java 源代码中。问题是求幂有不同的表示法:

所以我的问题是:有没有办法以“Java 格式”打印 SymPy 表达式?

SymPy 有几个 code printers that are intended specifically for such a purpose. While there is no Java code printer, there is one for Javascript。我不能说 Java 和 Javascript 是否在每个目的上都足够相似,但指数是按照你想要的方式打印的:

import sympy

a,b = sympy.symbols("a, b")

print(sympy.printing.jscode(a**b)) 
# 'Math.pow(a, b)'