一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Python中的模塊

 會(huì)飛的蘑菇 2015-02-28

                      Python中的模塊

  有過(guò)C語(yǔ)言編程經(jīng)驗(yàn)的朋友都知道在C語(yǔ)言中如果要引用sqrt這個(gè)函數(shù),必須用語(yǔ)句"#include<math.h>"引入math.h這個(gè)頭文件,否則是無(wú)法正常進(jìn)行調(diào)用的。那么在Python中,如果要引用一些內(nèi)置的函數(shù),該怎么處理呢?在Python中有一個(gè)概念叫做模塊(module),這個(gè)和C語(yǔ)言中的頭文件以及Java中的包很類(lèi)似,比如在Python中要調(diào)用sqrt函數(shù),必須用import關(guān)鍵字引入math這個(gè)模塊,下面就來(lái)了解一下Python中的模塊。

一.模塊的引入

  在Python中用關(guān)鍵字import來(lái)引入某個(gè)模塊,比如要引用模塊math,就可以在文件最開(kāi)始的地方用import math來(lái)引入。在調(diào)用math模塊中的函數(shù)時(shí),必須這樣引用:

  模塊名.函數(shù)名

  為什么必須加上模塊名這樣調(diào)用呢?因?yàn)榭赡艽嬖谶@樣一種情況:在多個(gè)模塊中含有相同名稱(chēng)的函數(shù),此時(shí)如果只是通過(guò)函數(shù)名來(lái)調(diào)用,解釋器無(wú)法知道到底要調(diào)用哪個(gè)函數(shù)。所以如果像上述這樣引入模塊的時(shí)候,調(diào)用函數(shù)必須加上模塊名。

復(fù)制代碼
import math

#這樣會(huì)報(bào)錯(cuò)
print sqrt(2)

#這樣才能正確輸出結(jié)果
print math.sqrt(2)
復(fù)制代碼

  有時(shí)候我們只需要用到模塊中的某個(gè)函數(shù),只需要引入該函數(shù)即可,此時(shí)可以通過(guò)語(yǔ)句

  from 模塊名 import 函數(shù)名1,函數(shù)名2....

來(lái)實(shí)現(xiàn),當(dāng)然可以通過(guò)不僅僅可以引入函數(shù),還可以引入一些常量。通過(guò)這種方式引入的時(shí)候,調(diào)用函數(shù)時(shí)只能給出函數(shù)名,不能給出模塊名,但是當(dāng)兩個(gè)模塊中含有相同名稱(chēng)函數(shù)的時(shí)候,后面一次引入會(huì)覆蓋前一次引入。也就是說(shuō)假如模塊A中有函數(shù)function( ),在模塊B中也有函數(shù)function( ),如果引入A中的function在先、B中的function在后,那么當(dāng)調(diào)用function函數(shù)的時(shí)候,是去執(zhí)行模塊B中的function函數(shù)。

  如果想一次性引入math中所有的東西,還可以通過(guò)from math import *來(lái)實(shí)現(xiàn),但是不建議這么做。

二.定義自己的模塊

  在Python中,每個(gè)Python文件都可以作為一個(gè)模塊,模塊的名字就是文件的名字。

  比如有這樣一個(gè)文件test.py,在test.py中定義了函數(shù)add:

#test.py

def add(a,b):
    return a+b

  那么在其他文件中就可以先import test,然后通過(guò)test.add(a,b)來(lái)調(diào)用了,當(dāng)然也可以通過(guò)from test import add來(lái)引入。

三.在引入模塊的時(shí)候發(fā)生了什么

  先看一個(gè)例子,在文件test.py中的代碼:

復(fù)制代碼
#test.py

def display():
    print 'hello world'
    
display()
    
復(fù)制代碼

  在test1.py中引入模塊test:

#test1.py

import test

  然后運(yùn)行test1.py,會(huì)輸出"hello world"。也就是說(shuō)在用import引入模塊時(shí),會(huì)將引入的模塊文件中的代碼執(zhí)行一次。但是注意,只在第一次引入時(shí)才會(huì)執(zhí)行模塊文件中的代碼,因?yàn)橹辉诘谝淮我霑r(shí)進(jìn)行加載,這樣做很容易理解,不僅可以節(jié)約時(shí)間還可以節(jié)約內(nèi)存。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多

    国产日韩精品激情在线观看| 国产又粗又猛又爽又黄| 这里只有九九热精品视频| 精品少妇人妻av免费看| 激情内射日本一区二区三区| 年轻女房东2中文字幕| 亚洲欧美黑人一区二区| 在线视频三区日本精品| 精品国自产拍天天青青草原 | 亚洲中文字幕在线观看四区| 国产一区日韩二区欧美| 色婷婷视频国产一区视频| 国产美女网红精品演绎| 日本欧美视频在线观看免费| 国产又粗又猛又大爽又黄| 久久三级国外久久久三级| 欧美日韩国内一区二区| 国产三级黄片在线免费看| 五月的丁香婷婷综合网| 人妻中文一区二区三区| 后入美臀少妇一区二区| 日韩中文字幕狠狠人妻| 日本一级特黄大片国产| 久久精品国产在热久久| 高跟丝袜av在线一区二区三区| 日本高清视频在线观看不卡| 国产午夜福利一区二区| 亚洲综合伊人五月天中文| 人妻中文一区二区三区| 亚洲精品国产福利在线| 色丁香一区二区黑人巨大| 国产成人精品国内自产拍| 亚洲最新中文字幕在线视频| 人妻亚洲一区二区三区| 日韩欧美国产精品自拍| 99日韩在线视频精品免费| 日本三区不卡高清更新二区| 东京干男人都知道的天堂| 国内真实露脸偷拍视频| 美女被啪的视频在线观看| 精品丝袜一区二区三区性色|