我通过Jupyter Notebook使用Python 3我在同一个工作目录中有两个模块“color.py”和“painting.ipynb” .
color.py
from enum import Enum
class Color(Enum):
RED = 1
BLUE = 2
def painting(color):
if color == Color.RED:
print("The painting is red")
elif color == Color.BLUE:
print("The painting is blue")
else:
raise ValueError("The painting is not blue nor red!")
painting.ipynb
import color
color.painting(Color.RED)
当我尝试在jupyter笔记本中运行“painting.ipynb”时,我有以下错误 .
------------------------------------------------- -------------------------- NameError Traceback(最近一次调用last)in()1 import color 2 ----> 3 color.painting (Color.RED)NameError:未定义名称“颜色”
我不明白为什么我无法访问颜色 . 我应该打电话给 class 吗?这是我第一次使用jupyter笔记本和Enum . 请帮忙:)谢谢 .
1 回答
因为您要导入整个.py文件;你需要用以下内容来引用你的“Color”枚举:
根据您计划引用该枚举的频率,最好单独导入您需要的位: