ModuleNotFoundError Traceback (most recent call last)
in ()
----> 1 import hi
2 hi.Func()
ModuleNotFoundError: No module named 'hi'
【以下回答由 GPT 生成】
问题解决思路如下:
首先,检查一下问题代码中的语法错误。在问题代码中,if语句中的__name__
的值应该是__main__
而不是main
,__name__
是一个特殊变量,它在被直接执行时的值是__main__
,而被导入时的值是模块的名称。所以将if __name__ == 'main'
修改为if __name__ == '__main__'
。
接下来,检查一下导入模块的路径是否正确。根据错误信息ModuleNotFoundError: No module named 'hi'
可以看出,在导入hi
模块时出现了找不到模块的错误。这可能是因为hi
模块的路径没有包含在Python解释器的搜索路径中。可以使用sys.path.append()
将hi.py
所在的路径添加到Python解释器的搜索路径中。
最后,在Jupyter Notebook中,需要先执行定义函数的代码块(包括导入模块的代码块),然后才能调用函数。确保你按照正确的顺序运行了代码块。
下面是修改后的代码:
import sys
sys.path.append('hi.py')
def Func():
if __name__ == '__main__':
print('Hello, 我正在自己执行函数,我的密码是1234')
elif __name__ == 'hi':
print('我在被别人调用。')
运行上述代码块,并且确保hi.py
文件在相应的路径下,然后再调用Func()
函数即可。