下面介紹下Python import與from import使用,具體內(nèi)容如下所示:
Python程序可以調(diào)用一組基本的函數(shù)(即內(nèi)建函數(shù)),比如print()、input()和len()等函數(shù)。Python本身也內(nèi)置一組模塊(即標(biāo)準(zhǔn)庫)。每個模塊都是一個Python程序,且包含了一組相關(guān)的函數(shù),可以嵌入到你的程序之中,比如,math模塊包含了數(shù)學(xué)運(yùn)算相關(guān)的函數(shù),random模塊包含隨機(jī)數(shù)相關(guān)的函數(shù),等等。
一、import語句
在開始使用一個模塊中的函數(shù)之前,必須用import語句導(dǎo)入該模塊。
語法:
import module1[, module2[,... moduleN]]
實(shí)例:
1、使用random模塊ranint() 函數(shù):
# printRandom.pyimport randomfor i in range(5): print(random.randint(1, 10))# result:
說明:因randint()函數(shù)屬于random模塊,必須在函數(shù)名稱之前先加上random,告訴Python在random模塊中尋找這個函數(shù)。
2、導(dǎo)入多個模塊:
import math, sys, random, os
二、from import語句
這是導(dǎo)入模塊的另一種形式,使用這種形式的 import 語句, 調(diào)用 模塊中的函數(shù)時不需要 moduleName. 前綴 。但是,使用完整的名稱會讓代碼更可讀,所以最好是使用普通形式的 import 語句 。
語法:
from moduleName import name1[, name2[, ... nameN]]|*
實(shí)例:
導(dǎo)入random模塊下的所有函數(shù):
from random import *for i in range(5): print(randint(1, 10)) # 這里就不需要random.前綴了
導(dǎo)入random模塊下的randint, random函數(shù):
from random import randint, random
下面看下python import 和from import 區(qū)別
上網(wǎng)查了一下,貌似是一個簡單問題,網(wǎng)上都是這么說的,我之前也是這么理解的:
假設(shè)有一個包名字叫 numpy, 里面有一個函數(shù) zeros
1、 from numpy import zeros
那么你可以直接調(diào)用 zeros()函數(shù)
2、import numpy.zeros
那么你只能使用全名 numpy.zeros
但今天遇到了問題了。
from sklearn import datasetsa=datasets.load_digits()print(a)
這個代碼沒問題
但是下面這個代碼居然提示錯誤
import sklearna=sklearn.datasets.load_digits()print(a)
提示錯誤是:AttributeError: module 'sklearn' has no attribute 'datasets'
什么鬼,看不懂,不是說import sklearn 后應(yīng)該可以通過點(diǎn).來訪問sklearn里的所有內(nèi)容嗎,就像numpy中那樣。初學(xué)者,不懂,求大神解釋下,不勝感激!!
這樣也報錯
import sklearn.datasetsa=datasets.load_digits()print(a)NameError: name 'datasets' is not defined
總結(jié)
以上所述是小編給大家介紹的Python import與from import使用及區(qū)別介紹,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對武林站長站網(wǎng)站的支持!
新聞熱點(diǎn)
疑難解答
圖片精選