开发者社区> cppshooter> 正文

python中import的引用机制引起的坑

简介: 最近在撸Scikit-Learn的代码,想加载点Seaborn的数据训练模型,简单的一句seaborn.load_dataset('')都编译通不过。 PS D:\sanye\pythonDEMO> python Python 3.
+关注继续查看

最近在撸Scikit-Learn的代码,想加载点Seaborn的数据训练模型,简单的一句seaborn.load_dataset('')都编译通不过。

import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
from sklearn.linear_model import LinearRegression
# 选择模型
model = LinearRegression(fit_intercept=True)
# 整理数据
iris = sns.load_dataset('iris')
rng = np.random.RandomState(42)
x = 10* rng.rand(50)
y = 2*x - 1 + rng.randn(50)
X = x[:, np.newaxis]
#拟合数据
model.fit(X,y)
#预测
xfit = np.linspace(-1,11)
Xfit = xfit[:, np.newaxis]
yfit = model.predict(Xfit)
plt.scatter(x,y)
plt.plot(xfit, yfit)
plt.show()
PS D:\sanye\pythonDEMO> python
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import matplotlib.pyplot as plt
>>> import numpy as np
>>> import seaborn as sns
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "D:\sanye\pythonDEMO\seaborn.py", line 5, in <module>
    iris = sns.load_dataset('iris')
AttributeError: module 'seaborn' has no attribute 'load_dataset'

慌了,一脸懵。仔细检查发现项目路径下有一个seaborn.py文件,改名一起恢复平静。汗~
这个完全是因为python导入模块的搜索路径以及优先级问题引起的。import导入模块搜索顺序:先当前路径,再环境变量路径。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Python 中《import this》背后的故事
Python 中《import this》背后的故事
19 0
Python的import this 惊喜彩蛋:Python之禅(The Zen of Python)
Python的import this 惊喜彩蛋:Python之禅(The Zen of Python)
50 0
如何 python import h5py 报错 :/defs.cpython-37m-x86_64-linux-gnu.so: undefined symbol: H5Pset_fapl_ros3
如何 python import h5py 报错 :/defs.cpython-37m-x86_64-linux-gnu.so: undefined symbol: H5Pset_fapl_ros3
81 0
import 语句是python 入门不得不熟知的第一道坎
import 语句是python 入门不得不熟知的第一道坎
74 0
Python学习笔记第三天(import导包(库)和Python条件语句)
Python学习笔记第三天讲解导入包(库)、条件语句、分支语句、多分支语句的用法。
32 0
python读取word详解【from docx import Document】
python读取word详解【from docx import Document】
240 0
详解Python中 import 关键词是如何实现的
import在python中是用来导入模块及第三方库的,那么为什么它具有这样的功能呢?
56 0
Python编程:import导入不同目录的模块
Python编程:import导入不同目录的模块
129 0
Python中import导入模块
Python中import导入模块
65 0
Python高级语法2:私有化、import、封装继承多态
Python高级语法2:私有化、import、封装继承多态
149 0
+关注
cppshooter
Change the world by algorithm
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
双剑合璧-Python和大数据计算平台的结合
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关实验场景
更多