Enthought Canopy python - 名称“”未定义
Enthought Canopy python - name ' ' not defined
我对使用 canopy 和一般编程还很陌生。
我正在尝试在 canopy 编辑器中的 Python 中定义一个函数。这曾经对我有用,但突然停止了,我不知道为什么。
作为一个基本的例子,在我写的编辑器中;
def funct(x):
return x
当在 shell 中写入 funct(1)
时,我收到错误消息
NameError: name 'funct' is not defined
有什么想法吗?
谢谢
我以前从未使用过 Canopy,但一般来说,您会将定义函数的文件保存在工作目录中的某处(例如 myfunct.py
),然后 import
将其保存到shell 命名空间:
In [1]: import myfunct
In [2]: myfunct.funct(1)
Out [2]: 1
您需要 "run" 您的脚本(在编辑器中)才能使其结果实际存在(并且可见)Python shell。在这种情况下,脚本的结果将定义您的函数。只是在编辑器中编写函数并不会在 Python 中实际创建它,直到您 运行 脚本。
正如 Ali 所说的那样,另一种(更深入的)方法是导入脚本(在本例中称为模块),但我认为 运行ning 可能更符合您的想法。
我对使用 canopy 和一般编程还很陌生。
我正在尝试在 canopy 编辑器中的 Python 中定义一个函数。这曾经对我有用,但突然停止了,我不知道为什么。
作为一个基本的例子,在我写的编辑器中;
def funct(x):
return x
当在 shell 中写入 funct(1)
时,我收到错误消息
NameError: name 'funct' is not defined
有什么想法吗? 谢谢
我以前从未使用过 Canopy,但一般来说,您会将定义函数的文件保存在工作目录中的某处(例如 myfunct.py
),然后 import
将其保存到shell 命名空间:
In [1]: import myfunct
In [2]: myfunct.funct(1)
Out [2]: 1
您需要 "run" 您的脚本(在编辑器中)才能使其结果实际存在(并且可见)Python shell。在这种情况下,脚本的结果将定义您的函数。只是在编辑器中编写函数并不会在 Python 中实际创建它,直到您 运行 脚本。
正如 Ali 所说的那样,另一种(更深入的)方法是导入脚本(在本例中称为模块),但我认为 运行ning 可能更符合您的想法。