[英]Enthought Canopy python - name ' ' not defined
一般而言,我對使用頂篷和編程非常陌生。
我試圖在冠層編輯器中用Python定義一個函數。 這曾經為我工作,但突然停止了,我不知道為什么。
作為一個基本的例子,我在編輯器中寫過;
def funct(x):
return x
在shell中寫funct(1)
時出現錯誤信息
NameError: name 'funct' is not defined
有任何想法嗎? 謝謝
您需要“運行”腳本(在編輯器中),然后腳本的結果實際存在(在Python外殼中可見)。 在這種情況下,腳本的結果就是定義函數。 在運行腳本之前,僅在編輯器中編寫函數實際上不會在Python中創建它。
正如Ali正確地說的,另一種(更深層次的)方法是導入腳本(在本例中稱為模塊),但是我認為運行可能更像是您想要的。
我以前從未使用過Canopy,但是通常,您將在函數在工作目錄中的某個位置保存文件(例如,作為myfunct.py
),然后import
其導入到外殼名稱空間中:
In [1]: import myfunct
In [2]: myfunct.funct(1)
Out [2]: 1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.