如何求解 python3.5 中的多项式?

How to solve a polynomial expression in python3.5?

from __future__ import division
import math
from sympy import *
d=symbol('d')
x=solve(d**2 - 224*d + 400)
print(x)

嗨,我是 python.I 的新手,刚刚尝试使用 symPy 求解多项式表达式,但出现以下错误。

Traceback (most recent call last):
  File "C:/Windows/System32/test.py", line 4, in <module>
    d=symbol('d')
TypeError: 'module' object is not callable

有人请帮我找出正确的 function.Thank 你

将 Symbol 大写,然后重试。

试试 d = Symbol('d')。执行 symbol('d') 您正试图将 symbol sub-module 用作无效的函数。另外,正如您在 python 3 中一样,您不需要将来的导入

您确定您 运行 宁 python3,并且您的脚本没有命名为与任何其他模块冲突的名称?您的脚本目录中是否有一个名为 sympy.py 的文件? (你不应该)

我从不使用 import *,你永远不知道你会 运行 遇到什么样的命名空间错误。此代码对我 100% 有效:

#!/usr/bin/env python3

import math
import sympy

d = sympy.Symbol('d')
x = sympy.solve(d**2 - 224*d + 400)
print(x)  # Prints [-4*sqrt(759) + 112, 4*sqrt(759) + 112]

x = sympy.solve(d - 10)
print(x)  # Prints 10