簡體   English   中英

有思想的樹冠python-名稱''未定義

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM