"引入math.h這個頭文件,否則是無法正常進行調用的。那麼在Python中,如果要引用一些內建的函數,該怎麼處理呢?在Python中有一個概念叫做模組(module),這個和C語言中的頭文件以及Java中的包很類似,比如在Python中要調用sqrt函數,必須用import關鍵字引入math這個模組,下面就來了解一下Python中的模組。"/> "引入math.h這個頭文件,否則是無法正常進行調用的。那麼在Python中,如果要引用一些內建的函數,該怎麼處理呢?在Python中有一個概念叫做模組(module),這個和C語言中的頭文件以及Java中的包很類似,比如在Python中要調用sqrt函數,必須用import關鍵字引入math這個模組,下面就來了解一下Python中的模組。">

首頁 >後端開發 >Python教學 >Python模組介紹

Python模組介紹

巴扎黑
巴扎黑原創
2017-08-02 11:51:221587瀏覽

  有過C語言程式設計經驗的朋友都知道在C語言中如果要引用sqrt這個函數,必須用語句"#include"引入math.h這個頭文件,否則是無法正常進行調用的。那麼在Python中,如果要引用一些內建的函數,該怎麼處理呢?在Python中有一個概念叫做模組(module),這個和C語言中的頭文件以及Java中的包很類似,比如在Python中要調用sqrt函數,必須用import關鍵字引入math這個模組,下面就來了解一下Python中的模組。

一.模組的引入

  在Python中用關鍵字import來引入某個模組,例如要引用模組math,就可以在檔案最開始的地方用import math來引入。在呼叫math模組中的函數時,必須這樣引用:

  模組名.函數名稱

  為什麼必須加上模組名稱這樣調用呢?因為可能存在這樣一種情況:在多個模組中含有相同名稱的函數,此時如果只是透過函數名稱來調用,解釋器無法知道到底要調用哪個函數。所以如果像上述這樣引入模組的時候,呼叫函數必須加上模組名。


import math#这样会报错print sqrt(2)#这样才能正确输出结果print math.sqrt(2)

  有時候我們只需要用到模組中的某個函數,只需要引入該函數即可,此時可以透過語句

  from 模組名import 函數名1,函數名2....

來實現,當然可以透過不只引入函數,還可以引入一些常數。透過這種方式引入的時候,呼叫函數時只能給出函數名,不能給出模組名,但是當兩個模組中含有相同名稱函數的時候,後面一次引入會覆蓋前一次引入。也就是說假如模組A中有函數function( ),在模組B中也有函數function( ),如果引入A中的function在先、B中的function在後,那麼當呼叫function函數的時候,是去執行模組B中的function函數。

  如果想一次引入math中所有的東西,還可以透過from math import *來實現,但是不建議這麼做。

二.定義自己的模組

  在Python中,每個Python檔案都可以作為一個模組,模組的名字就是檔案的名字。

  例如有這樣一個檔案test.py,在test.py中定義了函數add:


#test.pydef add(a,b):    return a+b

  那麼在其他檔案中就可以先import test,然後透過test.add(a,b)來呼叫了,當然也可以透過from test import add來引入。

三.在引入模組的時候發生了什麼

  先看一個例子,在檔案test.py中的程式碼:


#test.pydef display():    print 'hello world'
    display()

  在test1.py中引入模組test:


#test1.pyimport test

  然後執行test1.py,會輸出"hello world"。 也就是說在用import引入模組時,會將引入的模組檔案中的程式碼執行一次。但是注意,只在第一次引入時才會執行模組檔案中的程式碼,因為只在第一次引入時進行加載,這樣做很容易理解,不僅可以節約時間還可以節約記憶體。

以上是Python模組介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn