Python import與from import使用及區別介紹

Python程序能夠調用一組基本的函數(即內建函數),好比print()、input()和len()等函數。接下來經過本文給你們介紹Python import與from import使用及區別介紹,感興趣的朋友一塊兒看看吧
 

下面介紹下Python import與from import使用,具體內容以下所示:python

Python程序能夠調用一組基本的函數(即內建函數),好比print()、input()和len()等函數。Python自己也內置一組模塊(即標準庫)。每一個模塊都是一個Python程序,且包含了一組相關的函數,能夠嵌入到你的程序之中,好比,math模塊包含了數學運算相關的函數,random模塊包含隨機數相關的函數,等等。git

1、import語句dom

在開始使用一個模塊中的函數以前,必須用import語句導入該模塊。函數

語法:網站

import module1[, module2[,... moduleN]].net

實例:code

一、使用random模塊ranint() 函數:htm

# printRandom.py
import random
for i in range(5):
  print(random.randint(1, 10))
# result:

說明:因randint()函數屬於random模塊,必須在函數名稱以前先加上random,告訴Python在random模塊中尋找這個函數。input

二、導入多個模塊:數學

import math, sys, random, os

2、from import語句

這是導入模塊的另外一種形式,使用這種形式的 import 語句, 調用 模塊中的函數時不須要  moduleName. 前綴 。可是,使用完整的名稱會讓代碼更可讀,因此最好是使用普通形式的 import 語句 。

語法:

from moduleName import name1[, name2[, ... nameN]]|*

實例:

導入random模塊下的全部函數:

from random import *
for i in range(5):
  print(randint(1, 10)) # 這裏就不須要random.前綴了

導入random模塊下的randint, random函數:

from random import randint, random

下面看下python import 和from import 區別

上網查了一下,貌似是一個簡單問題,網上都是這麼說的,我以前也是這麼理解的:

假設有一個包名字叫 numpy, 裏面有一個函數 zeros

一、 from numpy import zeros

那麼你能夠直接調用 zeros()函數

二、import numpy.zeros

那麼你只能使用全名 numpy.zeros

但今天遇到了問題了。

from sklearn import datasets
a=datasets.load_digits()
print(a)

這個代碼沒問題

可是下面這個代碼竟然提示錯誤

import sklearn
a=sklearn.datasets.load_digits()
print(a)

提示錯誤是:AttributeError: module 'sklearn' has no attribute 'datasets'

什麼鬼,看不懂,不是說import sklearn 後應該能夠經過點.來訪問sklearn裏的全部內容嗎,就像numpy中那樣。初學者,不懂,求大神解釋下,不勝感激!!

這樣也報錯

import sklearn.datasets
a=datasets.load_digits()
print(a)
NameError: name 'datasets' is not defined

總結

以上所述是小編給你們介紹的Python import與from import使用及區別介紹,但願對你們有所幫助,若是你們有任何疑問請給我留言,小編會及時回覆你們的。在此也很是感謝你們對腳本之家網站的支持!

 

 

參考連接:https://www.jb51.net/article/146986.htm

相關文章
相關標籤/搜索