一、問題描述
import jieba導入后,使用jieba.cut()方法時報錯AttributeError: module 'jieba' has no attribute 'cut'
二、問題分析
明明已經導包了,為什么使用包里面的方法卻報錯沒有這個屬性,原因是有可能導錯包了,你要導的包有重名,導致導的這個包其實並不是正確的包
有可能是因為當前目錄中有文件名與導入的包名重名了,導致文件沖突。在python中,在導入模塊時,模塊的搜索順序是:
1、當前程序根目錄
2、PYTHONPATH
3、標准庫目錄
4、第三方庫目錄site-packages目錄
三、解決方法
經過分析后,發現我自己的目錄下,也有一個同名的jieba.py文件,導致在其他文件中導入jieba這個包時,首先導入當前目錄下的文件。
通過把當前目錄下重名的文件修改文件名后,完美解決問題