Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 名称错误:名称';数组';没有定义_Python_Python 2.7_Numpy - Fatal编程技术网

Python 名称错误:名称';数组';没有定义

Python 名称错误:名称';数组';没有定义,python,python-2.7,numpy,Python,Python 2.7,Numpy,我在PyScripter2.7中复制粘贴了这个程序。我还下载了适用于python 2.7的numpy和scipy import numpy as np from scipy import linalg A = np.array([[1,2],[3,4]]) array([[1, 2], [3, 4]]) linalg.inv(A) array([[-2. , 1. ], [ 1.5, -0.5]]) A.dot(linalg.inv(A)) #double check

我在PyScripter2.7中复制粘贴了这个程序。我还下载了适用于python 2.7的numpy和scipy

import numpy as np
from scipy import linalg
A = np.array([[1,2],[3,4]])
array([[1, 2],
      [3, 4]])
linalg.inv(A)
array([[-2. ,  1. ],
      [ 1.5, -0.5]])
A.dot(linalg.inv(A)) #double check
array([[  1.00000000e+00,   0.00000000e+00],
      [  4.44089210e-16,   1.00000000e+00]])
但它不会运行,并且会看到:
名称错误:未定义名称“array”
。 我该怎么办?

您需要导入
数组
类型,或者直接引用它:

from numpy import array
或者使用
np.array
来引用它

但是,您似乎正在查看脚本的输出以及代码本身:

import numpy as np
from scipy import linalg
A = np.array([[1,2],[3,4]])
linalg.inv(A)
A.dot(linalg.inv(A)) #double check
在交互式Python解释器提示符中运行该代码,我看到:

>>> import numpy as np
>>> from scipy import linalg
>>> A = np.array([[1,2],[3,4]])
>>> linalg.inv(A)
array([[-2. ,  1. ],
       [ 1.5, -0.5]])
>>> A.dot(linalg.inv(A)) #double check
array([[  1.00000000e+00,   0.00000000e+00],
       [  8.88178420e-16,   1.00000000e+00]])

您似乎已在试图运行的脚本中附加了输出,因此出现了错误。 执行以下命令会产生类似的错误-

>>> array([1, 2])

Traceback (most recent call last):
  File "<pyshell#18>", line 1, in <module>
    array([1, 2])
NameError: name 'array' is not defined
您的原始脚本是

import numpy as np
from scipy import linalg
A = np.array([[1,2],[3,4]])
linalg.inv(A)
A.dot(linalg.inv(A)) #double check

哦谢谢,我有一个问题。为什么“scipy”和“numpy”在我的pyscripter中不大胆,也不把它们的颜色改成蓝色?就像这样:我不知道;我自己不使用pyscripter。不,卡拉是对的,数组行是经过修饰的输出…你复制粘贴了吗?这似乎有输出附加到它。
import numpy as np
from scipy import linalg
A = np.array([[1,2],[3,4]])
linalg.inv(A)
A.dot(linalg.inv(A)) #double check