请教:为什么直接运行zipf_law.py会提示No module named 'tests.test_utility'?

python新手,从github上fork了之后又clone到本地了书中的本书的所有文件。

但是,我在读到第二章尝试运行zipf_law.py,直接提示:

ModuleNotFoundError: No module named ‘tests.test_utility’

是不是我的设置有问题?用VS code和Spyder都提示同样的问题。。。。我想这个问题应该很basic,只是自己不知道怎么解决。。。谢谢!

需要设置PYTHONPATH,比如:

$ ls
LICENSE          README.md        requirements.txt setup.py
MANIFEST.in      pyhanlp          setup.cfg        tests
$ export PYTHONPATH=.:$PYTHONPATH 

推荐使用一些更人性化的IDE,如果使用PyCharm的话,PYTHONPATH会帮你自动设置好。

2 Likes

谢谢,那我再试试PyCharm先。

老师,设置了,还是这样?怎么办呀?

1 Like

可以尝试在前面
import sys
sys.path.append(r’E:\研究资料\学习资料\机器学习\自然语言处理\pyhanlp-master\pyhanlp-master\tests’)
E:\研究资料\学习资料\机器学习\自然语言处理\pyhanlp-master\pyhanlp-master\tests为test_utility所在文件夹路径

你好,我按照你的说法做了,还是有错误。告诉我配置错误: 数据包 C:/Users/Administrator/Desktop/pyhanlp-master/pyhanlp/static\data 不存在,请修改配置文件中的root

你下载了数据吗?请去http://nlp.hankcs.com/download.php?file=data下载数据data文件并放置于C:/Users/Administrator/Desktop/pyhanlp-master/pyhanlp/static下,如果已下载并放置好,请检查
该目录下hanlp.properties文件(文本编辑器打开)中路径是否正确

好的谢谢已经解决了

您好,我在spyder和pycharm也都遇到了这个问题,试了上面的方法还是没解决…

昨天PYTHONPATH没设置对,重新设置后就可以运行了:grinning: