日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

詳解Python編程中包的概念與管理

系統 1690 0

Python中的包
包是一個分層次的文件目錄結構,它定義了一個由模塊及子包,和子包下的子包等組成的Python的應用環境。
考慮一個在Phone目錄下的pots.py文件。這個文件有如下源代碼:

            
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
def Pots():
  print "I'm Pots Phone"

          

??
同樣地,我們有另外兩個保存了不同函數的文件:

  • Phone/Isdn.py 含有函數Isdn()
  • Phone/G3.py 含有函數G3()

現在,在Phone目錄下創建file __init__.py:

            
Phone/__init__.py
          


當你導入Phone時,為了能夠使用所有函數,你需要在__init__.py里使用顯式的導入語句,如下:

            
from Pots import Pots
from Isdn import Isdn
from G3 import G3
          


當你把這些代碼添加到__init__.py之后,導入Phone包的時候這些類就全都是可用的了。

            
#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
# 導入 Phone 包
import Phone
 
Phone.Pots()
Phone.Isdn()
Phone.G3()

          

以上實例輸出結果:

            
I'm Pots Phone
I'm 3G Phone
I'm ISDN Phone
          


如上,為了舉例,我們只在每個文件里放置了一個函數,但其實你可以放置許多函數。你也可以在這些文件里定義Python的類,然后為這些類建一個包。

Python的包管理工具

Distribute是對標準庫disutils模塊的增強,我們知道disutils主要是用來更加容易的打包和分發包,特別是對其他的包有依賴的包。
Distribute被創建是因為Setuptools包不再維護了。
安裝Distribute
可以通過distribute_setup.py 腳本來安裝Distribute,也可以通過easy_install, pip,源文件來安裝,不過使用distribute_setup.py來安裝是最簡單和受歡迎的方式

            
$ curl -0 http://python-distribute.org/distribute_setup.py
$ sudo python distribute_setup.py
          


?
Pip 是安裝python包的工具,提供了安裝包,列出已經安裝的包,升級包以及卸載包的功能。
Pip 是對easy_install的取代,提供了和easy_install相同的查找包的功能,因此可以使用easy_install安裝的包也同樣可以使用pip進行安裝。
?
安裝Pip
Pip的安裝可以通過源代碼包,easy_install或者腳本。
下面介紹一下各種安裝方法:
源代碼方式:

            
$ wget http://pypi.python.org/packages/source/p/pip/pip-0.7.2.tar.gz (替換為最新的包)
$ tar xzf pip-0.7.2.tar.gz
$ cd pip-0.7.2
$ python setup.py install
easy_install:
$ easy_install pip

          

get_pip.py 腳本:

            
$ curl -0 https://raw.github.com/pypa/pip/master/contrib/get-pip.py
$ sudo python get-pip.py

          

?
OK, 下面來看一下Pip的使用
安裝package

            
$ pip install Markdown

          

列出安裝的packages

            
$ pip freeze
          


安裝特定版本的package
通過使用==, >=, <=, >, <來指定一個版本號。

            
$ pip install 'Markdown<2.0'
$ pip install 'Markdown>2.0,<2.0.3'
          


升級包
升級包到當前最新的版本,可以使用-U 或者 --upgrade

            
$ pip install -U Markdown
          


卸載包

            
$ pip uninstall Markdown
          


查詢包

            
pip search "Markdown"
          


?
PS -- 包安裝后的py文件路徑:

            
/usr/local/lib/python2.7/dist-packages
          


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

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

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 泽州县| 黄平县| 陇川县| 罗山县| 云安县| 武川县| 乐安县| 绥滨县| 林甸县| 稻城县| 富阳市| 乐山市| 宣汉县| 达州市| 同仁县| 温宿县| 乐陵市| 道真| 万源市| 临沧市| 垣曲县| 班玛县| 赞皇县| 甘南县| 绩溪县| 淅川县| 崇阳县| 凤山县| 乐业县| 云梦县| 钟山县| 绥化市| 石家庄市| 鸡东县| 龙里县| 资源县| 临猗县| 威海市| 文安县| 临桂县| 巫山县|