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

2021-09-20 04:27:00 字數 1313 閱讀 3579

最近在擼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

>>> import matplotlib.pyplot as plt

>>> import numpy as np

>>> import seaborn as sns

traceback (most recent call last):

file "", line 1, in file "d:\sanye\pythondemo\seaborn.py", line 5, in iris = sns.load_dataset('iris')

attributeerror: module 'seaborn' has no attribute 'load_dataset'

慌了,一臉懵。仔細檢查發現專案路徑下有乙個seaborn.py檔案,改名一起恢復平靜。汗~

這個完全是因為python匯入模組的搜尋路徑以及優先順序問題引起的。import匯入模組搜尋順序:先當前路徑,再環境變數路徑。

python中的import介紹

coding changes the world accumulating makes yourself 感覺乙個 模組就是乙個物件啊,這個物件單元是專門用來處理某些需求的,作為乙個單獨模組引入 import語句作用 import語句作用就是用來匯入模組的,它可以出現在程式中的任何位置。import...

Python中import的使用

python中的import語句是用來匯入模組的,在python模組庫中有著大量的模組可供使用,要想使用這些檔案需要用import語句把指定模組匯入到當前程式中。import語句的作用 import語句作用就是用來匯入模組的,它可以出現在程式中的任何位置。import語句語法 使用import語句匯...

python中的import詳解

匯入也是一種啟動程式的方法。匯入從本質上講,就是載入另乙個檔案,並能夠讀取那個檔案的內容。更大的程式往往以多個模組檔案的形式出現。乙個模組檔案被設計成主檔案,或叫做頂層檔案 就是那個啟動後能夠執行整個程式的檔案 匯入必須找到檔案,將其譯成位元組碼,並且執行 模組往往就是變數名的封裝,被認作是命名空間...