亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python模塊搜索概念介紹及模塊安裝方法介紹

系統(tǒng) 1838 0

【import模塊】

和C中的#include不同,Python中的import語(yǔ)句并不是簡(jiǎn)單的把一個(gè)文件插入另外一個(gè)文件。
導(dǎo)入其實(shí)是運(yùn)行時(shí)的運(yùn)算,程序第一次導(dǎo)入指定文件時(shí),會(huì)執(zhí)行以下步驟,

1. 找到模塊文件
2. 編譯成位碼
3. 執(zhí)行模塊中的代碼來(lái)創(chuàng)建所定義的模塊

并生成.pyc字節(jié)碼文件,這三個(gè)步驟只在程序執(zhí)行時(shí),模塊第一次導(dǎo)入時(shí)會(huì)進(jìn)行。之后導(dǎo)入相同的模塊時(shí),會(huì)跳過(guò)這三個(gè)步驟,而只提取內(nèi)存中已加載的模塊對(duì)象,速度要快的多。
NOTE:

1. Python把已加載的模塊放在內(nèi)置的sys.modules字典中,在import操作開(kāi)始時(shí)會(huì)確認(rèn)引用的模塊是否已加載。如果想看哪些模塊已加載,可以導(dǎo)入sys,打印sys.modules.keys()

復(fù)制代碼 代碼如下:

>>> sys.modules.keys()?
['heapq', 'functools', 'pyreadline.console.ansi',...,'pyreadline.modes']?

2. 可以import的四種文件類型

1.源文件(.py)
2.字節(jié)碼文件(.pyc)
3.C擴(kuò)展文件(Windows: .dll或.pyd文件 | Linux: .so文件)
4.相同變量名的目錄(用于包導(dǎo)入)

【搜索路徑】

比如說(shuō):import math,不需要加路徑和后綴名,系統(tǒng)會(huì)自動(dòng)搜索路徑,按照搜索先后順序,列出模塊搜索路徑.

1. 程序的主目錄(程序當(dāng)前運(yùn)行的目錄)
2. PYTHONPATH目錄(在環(huán)境變量里面配置與加到Path中一樣)
3. 標(biāo)準(zhǔn)庫(kù)目錄(比如說(shuō): C:\Python27\Lib)
4. .pth文件所在內(nèi)容(一般放在Lib\site-packages目錄下,如下:easy-install.pth)

復(fù)制代碼 代碼如下:

import sys; sys.__plen = len(sys.path)?
./setuptools-0.6c11-py2.7.egg?
./py-1.4.26-py2.7.egg?
./sphinx-1.3b1-py2.7.egg?
./colorama-0.3.2-py2.7.egg?
./babel-1.3-py2.7.egg?
./snowballstemmer-1.2.0-py2.7.egg?
./docutils-0.12-py2.7.egg?
./pygments-2.0.1-py2.7.egg?
./jinja2-2.7.3-py2.7.egg?
./six-1.8.0-py2.7.egg?
./pytz-2014.9-py2.7.egg?
./markupsafe-0.23-py2.7.egg?
./pyzmq-14.4.1-py2.7-win-amd64.egg?
./tornado-4.0.2-py2.7-win-amd64.egg?
./backports.ssl_match_hostname-3.4.0.2-py2.7.egg?
./certifi-14.05.14-py2.7.egg?
./egg-0.2.0-py2.7.egg?
./chicken-0.1.0-py2.7.egg?
import sys; new=sys.path[sys.__plen:]; del sys.path[sys.__plen:]; p=getattr(sys,'__egginsert',0); sys.path[p:p]=new; sys.__egginsert = p+len(new)?

而所有這些路徑可以通過(guò)sys.path來(lái)看到

復(fù)制代碼 代碼如下:

>>> import sys?
>>> sys.path?
['', 'C:\\Python27\\lib\\site-packages\\setuptools-0.6c11-py2.7.egg', ...,'C:\\Python27\\lib\\site-packages\\wx-3.0-msw']?

臨時(shí)的工作路徑加載,可以用
復(fù)制代碼 代碼如下:

>>> sys.path.append('d:\\test')?
>>> sys.path?
['', 'C:\\Python27\\lib\\site-packages\\setuptools-0.6c11-py2.7.egg', 'C:\\Python27\\lib\\, 'd:\\test']?
>>> sys.path.remove('d:\\test')?

【模塊安裝】

但上面的方法只是臨時(shí)性的,一旦退出程序或當(dāng)前交互環(huán)境,就失效。要想永久生效就必須讓其加入到上述目錄中
Perl的強(qiáng)大在于CPAN,可喜的是,Python也開(kāi)始有類似的技術(shù)及功能,比如說(shuō)pip,可以用包括pip來(lái)安裝模塊。

1. 自寫(xiě)模塊,直接拷貝到上述任意目錄
2. 第三方模塊,執(zhí)行python setup.py install安裝
3. 用easy_install安裝

下載ez_setup.py文件
執(zhí)行: python ez_setup.py
安裝所要安裝的模塊: easy_install py

4. 用pip安裝

先用easy_install pip命令來(lái)安裝pip
再用pip install Markdown來(lái)安裝具體模塊,假設(shè)模塊名為: Markdown

5. 用第三方模塊管理庫(kù)(比如說(shuō)Canopy就可以管理科學(xué)計(jì)算模塊,可惜很多需要收費(fèi))

Python模塊搜索概念介紹及模塊安裝方法介紹_第1張圖片

用此工具,就可以安裝ipython環(huán)境了

Python模塊搜索概念介紹及模塊安裝方法介紹_第2張圖片


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 亚洲欧美一区二区三区在线播放 | 国产精品一区牛牛影视 | 国产毛片哪里有 | 久久精品国产曰本波多野结衣 | 久久精品久久久久 | 妞干网这里只有精品 | 欧美ⅹxxxx视频 | 口国产成人高清在线播放 | 久久久久久久久66精品片 | 日韩短视频 | 欧美一级毛片免费大片 | 亚洲欧美卡通成人制服动漫 | 久久国产乱子伦精品免费一 | 欧美日本免费观看αv片 | 男人影院免费 | 国产嘿咻 | 亚洲在线中文 | 日本高清精品 | 一二三区| 久久美剧 | 中文字幕国产欧美 | 亚洲免费视频网 | 综合视频在线 | 亚洲免费高清 | 高清一级毛片一本到免费观看 | 一级毛片免费观看不卡的 | 久久网欧美| 一级黄色免费毛片 | 亚洲a在线视频 | 91尤物国产尤物福利 | 天天做天天爱天天操 | 一级特黄性色生活片一区二区 | swag系列国产精品 | 日韩美毛片 | 亚洲免费国产 | 人人爱天天做夜夜爽 | 欧美日本综合 | 久久精品视频免费在线观看 | 国产99视频精品免费视频7 | 日韩一区二区三区免费 | 精品美女在线 |