相关疑难解决方法(0)

SymPy:安全地解析字符串

SymPy配备了很好的sympify()函数,它可以将任意字符串解析为SymPy表达式.但它有两个主要缺点:

  1. 它不安全,因为它依赖于臭名昭着的eval()
  2. 它会自动简化读取表达式.例如,sympify('二项式(5,3)')将返回表达式10.

所以我的问题是:

首先,有没有办法"只解析"字符串,而无需任何额外的计算?我想实现这样的效果:

latex(parse('binomial(5,3)')) #returns '{\\binom{5}{3}}'
Run Code Online (Sandbox Code Playgroud)

第二,是否有一种可接受的方式来同意(即解析和计算)任意用户生成的字符串,同时保持安全?这是由SymPy Gamma完成的,所以在实践中这是可能的,但问题是需要多少脏工作.

python sympy

5
推荐指数
1
解决办法
357
查看次数

标签 统计

python ×1

sympy ×1