# quadratic.py
# A program that computes the real roots fo a quadratic equation.
# Illustrates the use of the math library
# Note: This program crashes if the equation has no real roots
import math # math makes the library available
def main():
print "This program finds the real solutions to a quadratic"
print
a, b, c = input("Please enter the coefficients (a, b, c): ")
discRoot = math.sqrt(b * b - 4 * a * c)
root1 = (-b +discRoot) / (2 * a)
root2 = (-b +discRoot) / (2 * a)
print
print "The solutions are: ", root1 , root2
main()她是我得到的错误:
Macintosh-7:$ python quadratic.py 我的家庭作业问题的答案是: i+x+j =什么? 回溯(最近一次调用): 文件"quadratic.py",第6行 导入数学#数学使库可用 文件"/Users/andrewmetersky/Desktop/Programming/Python/math.py",第5行,在 NameError:未定义名称'jp‘
问题是,math.py甚至不是那个位置的文件。是的,但我删除了它,因为我认为Python试图获取它,而不是数学模块。在该模块的math.pyc中有一个名为location...is的文件?为什么它拿不到那个。
谢谢
PS-同样,如何使刚刚粘贴的部分显示为代码w/in堆栈溢出,而不必为每一行按空格4x。
发布于 2012-07-26 03:41:34
您还需要删除.pyc文件。这是原始.py文件的编译版本,如果它在路径中,python将使用它。只有在源(.py)文件存在且较新的情况下,它才会得到更新(重新编译)。
当您首次import本地文件时,Python会将该文件转换为字节码并将其标记为.pyc。
发布于 2012-07-26 03:41:11
:/User/andrewmetersky/Desktop/Programming/Python“中有一个名为"math.py”的文件,位于Python自己的数学模块之前。重命名文件并删除匹配的.pyc文件,一切都会再次正常工作。
发布于 2012-07-26 03:45:23
数学是一个标准的Python库,所以您的代码应该按原样工作。
要确认运行:
$python
>>import math
看看你得到了什么。
似乎您正在用本地目录中自己的定义掩蔽数学库。
删除与math.py或math.pyc类似的本地内容,然后再试一次。
跑
https://stackoverflow.com/questions/11662001
复制相似问题